changeset 31216:c58011e29a87

Fix compilation error introduced on 2009-04-25.
author Bruno Haible <bruno@clisp.org>
date Thu, 30 Apr 2009 13:03:29 +0200
parents 7b881ae1846d
children 6213ed221b40
files ChangeLog lib/math.in.h lib/signbitd.c lib/signbitf.c lib/signbitl.c
diffstat 5 files changed, 28 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Apr 29 10:03:37 2009 -0700
+++ b/ChangeLog	Thu Apr 30 13:03:29 2009 +0200
@@ -1,3 +1,16 @@
+2009-04-30  Bruno Haible  <bruno@clisp.org>
+
+	Fix bug introduced on 2009-04-25.
+	* lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
+	gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
+	* lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
+	is defined.
+	* lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
+	is defined.
+	* lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
+	is defined.
+	Reported by Elbert_Pol <elbert.pol@gmail.com>.
+
 2009-04-28  Bruno Haible  <bruno@clisp.org>
 
 	Comment tweaks.
--- a/lib/math.in.h	Wed Apr 29 10:03:37 2009 -0700
+++ b/lib/math.in.h	Thu Apr 30 13:03:29 2009 +0200
@@ -519,6 +519,7 @@
 extern int gl_signbitl (long double arg);
 #  if __GNUC__ >= 2 && !__STRICT_ANSI__
 #   if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf
+#    define gl_signbitf_OPTIMIZED_MACRO
 #    define gl_signbitf(arg) \
        ({ union { float _value;						\
                   unsigned int _word[(sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \
@@ -528,6 +529,7 @@
         })
 #   endif
 #   if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd
+#    define gl_signbitd_OPTIMIZED_MACRO
 #    define gl_signbitd(arg) \
        ({ union { double _value;						\
                   unsigned int _word[(sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \
@@ -537,6 +539,7 @@
         })
 #   endif
 #   if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl
+#    define gl_signbitl_OPTIMIZED_MACRO
 #    define gl_signbitl(arg) \
        ({ union { long double _value;					\
                   unsigned int _word[(sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \
--- a/lib/signbitd.c	Wed Apr 29 10:03:37 2009 -0700
+++ b/lib/signbitd.c	Thu Apr 30 13:03:29 2009 +0200
@@ -23,6 +23,10 @@
 #include "isnand-nolibm.h"
 #include "float+.h"
 
+#ifdef gl_signbitd_OPTIMIZED_MACRO
+# undef gl_signbitd
+#endif
+
 int
 gl_signbitd (double arg)
 {
--- a/lib/signbitf.c	Wed Apr 29 10:03:37 2009 -0700
+++ b/lib/signbitf.c	Thu Apr 30 13:03:29 2009 +0200
@@ -23,6 +23,10 @@
 #include "isnanf-nolibm.h"
 #include "float+.h"
 
+#ifdef gl_signbitf_OPTIMIZED_MACRO
+# undef gl_signbitf
+#endif
+
 int
 gl_signbitf (float arg)
 {
--- a/lib/signbitl.c	Wed Apr 29 10:03:37 2009 -0700
+++ b/lib/signbitl.c	Thu Apr 30 13:03:29 2009 +0200
@@ -23,6 +23,10 @@
 #include "isnanl-nolibm.h"
 #include "float+.h"
 
+#ifdef gl_signbitl_OPTIMIZED_MACRO
+# undef gl_signbitl
+#endif
+
 int
 gl_signbitl (long double arg)
 {