[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
signbitl: avoid link error
From: |
Bruno Haible |
Subject: |
signbitl: avoid link error |
Date: |
Sat, 25 Apr 2009 17:25:19 +0200 |
User-agent: |
KMail/1.9.9 |
Hi,
The gl_signbitl function gives a link error if the config.h file aliases
this function, e.g.
#define gl_signbitl libfoo_gl_signbitl
Such aliases are used when making a library namespace clean.
I'm fixing it through this patch.
2009-04-25 Bruno Haible <address@hidden>
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.
--- lib/math.in.h.orig 2009-04-25 17:19:59.000000000 +0200
+++ lib/math.in.h 2009-04-25 17:01:15.000000000 +0200
@@ -1,6 +1,6 @@
/* A GNU-like <math.h>.
- 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)]; \
--- lib/signbitd.c.orig 2009-04-25 17:19:59.000000000 +0200
+++ lib/signbitd.c 2009-04-25 17:01:45.000000000 +0200
@@ -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)
{
--- lib/signbitf.c.orig 2009-04-25 17:19:59.000000000 +0200
+++ lib/signbitf.c 2009-04-25 17:01:46.000000000 +0200
@@ -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)
{
--- lib/signbitl.c.orig 2009-04-25 17:19:59.000000000 +0200
+++ lib/signbitl.c 2009-04-25 17:01:46.000000000 +0200
@@ -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)
{
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- signbitl: avoid link error,
Bruno Haible <=