This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [preliminary patch] Fix build failure with Debian gcc-4.7
- From: Daniel Schepler <dschepler at gmail dot com>
- To: libc-alpha at sourceware dot org
- Date: Fri, 6 Jul 2012 23:00:26 -0700
- Subject: Re: [preliminary patch] Fix build failure with Debian gcc-4.7
- References: <201207062020.26262.dschepler@gmail.com>
Here's an updated version, which has the redirections abstracted to a couple
macros.
--
Daniel Schepler
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 12b3639..3b7f2a1 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -491,6 +491,11 @@ for linking")
# define __hidden_proto(name, internal, attrs...) \
extern __typeof (name) name __asm__ (__hidden_asmname (#internal)) \
__hidden_proto_hiddenattr (attrs);
+# define __non_inline_version(name) \
+ __NI_##name
+# define __hidden_proto_non_inline(name, attrs...) \
+ extern __typeof (name) __non_inline_version(name) __attribute__ ((attrs)); \
+ __hidden_proto (__non_inline_version(name), __GI_##name)
# define __hidden_asmname(name) \
__hidden_asmname1 (__USER_LABEL_PREFIX__, name)
# define __hidden_asmname1(prefix, name) __hidden_asmname2(prefix, name)
diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c
index 70a620c..91a2dea 100644
--- a/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c
+++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c
@@ -19,7 +19,9 @@
#include <math_private.h>
#undef __isnan
-int __isnan(double x)
+__hidden_proto_non_inline (__isnan, __nothrow__, __const__)
+
+int __non_inline_version(__isnan) (double x)
{
int64_t hx;
EXTRACT_WORDS64(hx,x);