https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104233

--- Comment #4 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> ---
> Shouldn't the __float128 stuff be guarded with
> defined(GFC_REAL_16_IS_FLOAT128) || defined(HAVE_GFC_REAL_17)

We could. My goal was for that header not to depend on libgfortran macros
(meaning it's generic), but GFC_REAL_16_IS_FLOAT128 would work in practice.

Re. HAVE_GFC_REAL_17 it is currently not supported in the IEEE files, so I'll
avoid that for now.



Does that restore Solaris/SPARC bootstrap?

diff --git a/libgfortran/ieee/issignaling_fallback.h
b/libgfortran/ieee/issignaling_fallback.h
index 440a3f6c9a5..98b0b2819ac 100644
--- a/libgfortran/ieee/issignaling_fallback.h
+++ b/libgfortran/ieee/issignaling_fallback.h
@@ -195,9 +195,9 @@ __issignalingl (long double x)
 #endif


-#if __FLT128_IS_IEC_60559__
+#if defined(GFC_REAL_16_IS_FLOAT128)

-/* We have a _Float128 type.  */
+/* We have a __float128 type.  */

 typedef union
 {
@@ -234,7 +234,7 @@ __issignalingf128 (__float128 x)

 /* Define the type-generic macro based on the functions above.  */

-#if __FLT128_IS_IEC_60559__
+#if defined(GFC_REAL_16_IS_FLOAT128)
 # define issignaling(X) \
   _Generic ((X), \
            __float128: __issignalingf128, \

Reply via email to