# HG changeset patch # User Bruno Haible # Date 1240672970 -7200 # Node ID d800366aa3feb0b99629fd7a17cd2b41abe55ab3 # Parent a051fb72401360b88374a119b39cc75418d6ec63 Avoid link error when creating a namespace clean library. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2009-04-25 Bruno Haible + + Avoid link error when creating a namespace clean library. + * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define + as macro with arguments if already defined as an alias. + * lib/signbitf.c (gl_signbitf): Don't undefine. + * lib/signbitd.c (gl_signbitd): Don't undefine. + * lib/signbitl.c (gl_signbitl): Don't undefine. + 2009-04-25 Jim Meyering vc-list-files: fix another quoting bug diff --git a/lib/math.in.h b/lib/math.in.h --- a/lib/math.in.h +++ b/lib/math.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 2002-2003, 2007-2008 Free Software Foundation, Inc. + Copyright (C) 2002-2003, 2007-2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -518,7 +518,7 @@ extern int gl_signbitd (double arg); extern int gl_signbitl (long double arg); # if __GNUC__ >= 2 && !__STRICT_ANSI__ -# if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT +# if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf # define gl_signbitf(arg) \ ({ union { float _value; \ unsigned int _word[(sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \ @@ -527,7 +527,7 @@ (_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1; \ }) # endif -# if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT +# if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd # define gl_signbitd(arg) \ ({ union { double _value; \ unsigned int _word[(sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \ @@ -536,7 +536,7 @@ (_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1; \ }) # endif -# if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT +# if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl # define gl_signbitl(arg) \ ({ union { long double _value; \ unsigned int _word[(sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \ diff --git a/lib/signbitd.c b/lib/signbitd.c --- a/lib/signbitd.c +++ b/lib/signbitd.c @@ -1,5 +1,5 @@ /* signbit() macro: Determine the sign bit of a floating-point number. - Copyright (C) 2007-2008 Free Software Foundation, Inc. + Copyright (C) 2007-2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,8 +23,6 @@ #include "isnand-nolibm.h" #include "float+.h" -#undef gl_signbitd - int gl_signbitd (double arg) { diff --git a/lib/signbitf.c b/lib/signbitf.c --- a/lib/signbitf.c +++ b/lib/signbitf.c @@ -1,5 +1,5 @@ /* signbit() macro: Determine the sign bit of a floating-point number. - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007, 2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,8 +23,6 @@ #include "isnanf-nolibm.h" #include "float+.h" -#undef gl_signbitf - int gl_signbitf (float arg) { diff --git a/lib/signbitl.c b/lib/signbitl.c --- a/lib/signbitl.c +++ b/lib/signbitl.c @@ -1,5 +1,5 @@ /* signbit() macro: Determine the sign bit of a floating-point number. - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007, 2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,8 +23,6 @@ #include "isnanl-nolibm.h" #include "float+.h" -#undef gl_signbitl - int gl_signbitl (long double arg) {