[gcc(refs/users/meissner/heads/work075)] Allow other languages to change long double format.

Michael Meissner meissner@gcc.gnu.org
Thu Jan 6 03:23:38 GMT 2022


https://gcc.gnu.org/g:22b778e6ea951774df921a2a49c0cf75a2b512a3

commit 22b778e6ea951774df921a2a49c0cf75a2b512a3
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Jan 5 22:23:19 2022 -0500

    Allow other languages to change long double format.
    
    With Fortran adding support for changing the long double format, this
    patch removes the code that only allowed C/C++ to change the long double
    format for GLIBC 2.32 and later without a warning.
    
    gcc/
    2022-01-05  Michael Meissner  <meissner@the-meissners.org>
    
            * config/rs6000/rs6000.c (rs6000_option_override_internal): Remove
            checks for only C/C++ front ends before allowing the long double
            format to change without a warning.

Diff:
---
 gcc/config/rs6000/rs6000.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 319182e94d9..0e3481c8327 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -4221,13 +4221,11 @@ rs6000_option_override_internal (bool global_init_p)
       if (rs6000_ieeequad != TARGET_IEEEQUAD_DEFAULT && TARGET_LONG_DOUBLE_128)
 	{
 	  /* Determine if the user can change the default long double type at
-	     compilation time.  Only C and C++ support this, and you need GLIBC
-	     2.32 or newer.  Only issue one warning.  */
+	     compilation time.  You need GLIBC 2.32 or newer to be able to
+	     change the long double type.  Only issue one warning.  */
 	  static bool warned_change_long_double;
 
-	  if (!warned_change_long_double
-	      && (!glibc_supports_ieee_128bit ()
-		  || (!lang_GNU_C () && !lang_GNU_CXX ())))
+	  if (!warned_change_long_double && !glibc_supports_ieee_128bit ())
 	    {
 	      warned_change_long_double = true;
 	      if (TARGET_IEEEQUAD)


More information about the Gcc-cvs mailing list