about summary refs log tree commit diff
path: root/sysdeps/ieee754/ldbl-128ibm/bits
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/ldbl-128ibm/bits')
-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
 }