Always provide declarations of long double math functions when !_LIBC
authorAndreas Schwab <schwab@redhat.com>
Fri, 4 Nov 2011 13:39:05 +0000 (14:39 +0100)
committerAndreas Schwab <schwab@redhat.com>
Fri, 4 Nov 2011 14:16:11 +0000 (15:16 +0100)
ChangeLog
NEWS
math/complex.h
math/math.h

index 6622603..e57f098 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2011-11-04  Andreas Schwab  <schwab@redhat.com>
 
+       [BZ #10103]
+       * math/math.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Provide
+       declarations for long double functions.
+       * math/complex.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Likewise.
+
        * elf/sprof.c (load_shobj): Fix off-by-one when reading link name.
 
 2011-11-03  Andreas Schwab  <schwab@redhat.com>
diff --git a/NEWS b/NEWS
index 60f8f87..6223bae 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes.  2011-11-1
+GNU C Library NEWS -- history of user-visible changes.  2011-11-4
 Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
 See the end for copying conditions.
 
@@ -9,10 +9,10 @@ Version 2.15
 
 * The following bugs are resolved with this release:
 
-  6779, 6783, 9696, 10709, 11589, 12403, 12847, 12868, 12852, 12874, 12885,
-  12892, 12907, 12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092,
-  13114, 13118, 13123, 13134, 13138, 13150, 13179, 13192, 13268, 13276,
-  13291, 13335, 13337, 13344, 13358, 13367
+  6779, 6783, 9696, 10103, 10709, 11589, 12403, 12847, 12868, 12852, 12874,
+  12885, 12892, 12907, 12922, 12935, 13007, 13021, 13067, 13068, 13090,
+  13092, 13114, 13118, 13123, 13134, 13138, 13150, 13179, 13192, 13268,
+  13276, 13291, 13335, 13337, 13344, 13358, 13367
 
 * New program pldd to list loaded object of a process
   Implemented by Ulrich Drepper.
index 751aaf7..cc6006e 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999, 2000, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2000, 2006, 2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -85,7 +85,8 @@ __BEGIN_DECLS
 /* And the long double versions.  It is non-critical to define them
    here unconditionally since `long double' is required in ISO C99.  */
 #if (__STDC__ - 0 || __GNUC__ - 0) \
-    && (!defined __NO_LONG_DOUBLE_MATH || defined __LDBL_COMPAT)
+    && (!(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \
+       || defined __LDBL_COMPAT)
 # ifdef __LDBL_COMPAT
 #  undef __MATHDECL_1
 #  define __MATHDECL_1(type, function, args) \
index 8b98ff3..a849a03 100644 (file)
@@ -98,7 +98,8 @@ __BEGIN_DECLS
 # undef        __MATH_PRECNAME
 
 # if (__STDC__ - 0 || __GNUC__ - 0) \
-     && (!defined __NO_LONG_DOUBLE_MATH || defined __LDBL_COMPAT)
+     && (!(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \
+        || defined __LDBL_COMPAT)
 #  ifdef __LDBL_COMPAT
 
 #   ifdef __USE_ISOC99
@@ -116,9 +117,6 @@ extern long double __REDIRECT_NTH (nexttowardl,
 #    endif
 #   endif
 
-/* Include the file of declarations again, this time using `long double'
-   instead of `double' and appending l to each function name.  */
-
 #   undef __MATHDECL_1
 #   define __MATHDECL_2(type, function,suffix, args, alias) \
   extern type __REDIRECT_NTH(__MATH_PRECNAME(function,suffix), \
@@ -127,6 +125,9 @@ extern long double __REDIRECT_NTH (nexttowardl,
   __MATHDECL_2(type, function,suffix, args, __CONCAT(function,suffix))
 #  endif
 
+/* Include the file of declarations again, this time using `long double'
+   instead of `double' and appending l to each function name.  */
+
 #  ifndef _Mlong_double_
 #   define _Mlong_double_      long double
 #  endif