aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h b/sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h
index 70da85f2cb..b2021b5d64 100644
--- a/sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h
+++ b/sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h
@@ -20,15 +20,11 @@
# error "Never use <bits/iscanonical.h> directly; include <math.h> instead."
#endif
-#ifdef __NO_LONG_DOUBLE_MATH
+#if defined (__NO_LONG_DOUBLE_MATH) || __LONG_DOUBLE_USES_FLOAT128 == 1
# define iscanonical(x) ((void) (__typeof (x)) (x), 1)
#else
-# if __LONG_DOUBLE_USES_FLOAT128 == 1
-# define __iscanonicall(x) ((void) (__typeof (x)) (x), 1)
-# else
extern int __iscanonicall (long double __x)
__THROW __attribute__ ((__const__));
-# endif
# define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1)
# define __iscanonical(x) ((void) (__typeof (x)) (x), 1)
# if __HAVE_DISTINCT_FLOAT128
@@ -54,9 +50,7 @@ extern "C++" {
inline int iscanonical (float __val) { return __iscanonicalf (__val); }
inline int iscanonical (double __val) { return __iscanonical (__val); }
inline int iscanonical (long double __val) { return __iscanonicall (__val); }
-/* When using an IEEE 128-bit long double, _Float128 is defined as long double
- in C++. */
-# if __HAVE_DISTINCT_FLOAT128 && __HAVE_FLOAT128_UNLIKE_LDBL
+# if __HAVE_DISTINCT_FLOAT128
inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); }
# endif
}