This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, master, updated. glibc-2.15-216-gff3b3d8


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  ff3b3d82781300d48abec8a4a1600e7486663705 (commit)
      from  ef0aab352c3ac1b0670211dac93c0802b2ef046d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=ff3b3d82781300d48abec8a4a1600e7486663705

commit ff3b3d82781300d48abec8a4a1600e7486663705
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Wed Feb 22 12:53:04 2012 +0000

    Move __STDC_* predefined macros from features.h to stdc-predef.h.

diff --git a/CONFORMANCE b/CONFORMANCE
index 8275aba..b23318e 100644
--- a/CONFORMANCE
+++ b/CONFORMANCE
@@ -134,13 +134,12 @@ Compiler limitations
 ====================
 
 The macros __STDC_IEC_559__, __STDC_IEC_559_COMPLEX__ and
-__STDC_ISO_10646__ are properly supposed to be defined by the
-compiler, and to be constant throughout the translation unit (before
-and after any library headers are included).  However, they mainly
-relate to library features, and the necessary magic has yet to be
-implemented for GCC to predefine them to the correct values for the
-library in use, so glibc defines them in <features.h>.  Programs that
-test them before including any standard headers may misbehave.
+__STDC_ISO_10646__ are properly supposed to be constant throughout the
+translation unit (before and after any library headers are included).
+However, they mainly relate to library features, and GCC only knows to
+preinclude <stdc-predef.h> to get their definitions in version 4.8 and
+later.  Programs that test them before including any standard headers
+may misbehave with older compilers.
 
 GCC doesn't support the optional imaginary types.  Nor does it
 understand the keyword _Complex before GCC 3.0.  This has the
diff --git a/ChangeLog b/ChangeLog
index 80e95d1..e1f9532 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2012-02-22  Joseph Myers  <joseph@codesourcery.com>
 
+	[BZ #10110]
+	* include/stdc-predef.h: New file.  Extracted from features.h.
+	* include/features.h: Include stdc-predef.h.
+	* Makefile (headers): Add stdc-predef.h.
+	* CONFORMANCE (Compiler limitations): Update.
+
+2012-02-22  Joseph Myers  <joseph@codesourcery.com>
+
 	* manual/libc.texinfo (VERSION, UPDATED): Revert.
 
 2012-02-21  David S. Miller  <davem@davemloft.net>
diff --git a/Makefile b/Makefile
index d1fa347..10a2cce 100644
--- a/Makefile
+++ b/Makefile
@@ -60,7 +60,7 @@ endif # $(AUTOCONF) = no
 		   $(addprefix install-, no-libc.a bin lib data headers others)
 
 headers := limits.h values.h features.h gnu-versions.h bits/libc-lock.h \
-	   bits/xopen_lim.h gnu/libc-version.h
+	   bits/xopen_lim.h gnu/libc-version.h stdc-predef.h
 
 echo-headers: subdir_echo-headers
 
diff --git a/NEWS b/NEWS
index 429f768..b210474 100644
--- a/NEWS
+++ b/NEWS
@@ -10,9 +10,9 @@ Version 2.16
 * The following bugs are resolved with this release:
 
   174, 350, 411, 3335, 4026, 4596, 4822, 5077, 5805, 5993, 6884, 6907, 9739,
-  9902, 10140, 10210, 11174, 11322, 11494, 12047, 13058, 13525, 13526,
-  13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551, 13552,
-  13553, 13555, 13559, 13583, 13618, 13695, 13704
+  9902, 10110, 10140, 10210, 11174, 11322, 11494, 12047, 13058, 13525,
+  13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551,
+  13552, 13553, 13555, 13559, 13583, 13618, 13695, 13704
 
 * ISO C11 support:
 
diff --git a/include/features.h b/include/features.h
index 6038ecc..c347555 100644
--- a/include/features.h
+++ b/include/features.h
@@ -1,5 +1,4 @@
-/* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
-   Free Software Foundation, Inc.
+/* Copyright (C) 1991-2012 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
@@ -337,12 +336,9 @@
 # define __USE_FORTIFY_LEVEL 0
 #endif
 
-/* We do support the IEC 559 math functionality, real and complex.  */
-#define __STDC_IEC_559__		1
-#define __STDC_IEC_559_COMPLEX__	1
-
-/* wchar_t uses ISO 10646-1 (2nd ed., published 2000-09-15) / Unicode 3.1.  */
-#define __STDC_ISO_10646__		200009L
+/* Get definitions of __STDC_* predefined macros, if the compiler has
+   not preincluded this header automatically.  */
+#include <stdc-predef.h>
 
 /* This macro indicates that the installed library is the GNU C Library.
    For historic reasons the value now is 6 and this will stay from now
diff --git a/include/stdc-predef.h b/include/stdc-predef.h
new file mode 100644
index 0000000..ef10c16
--- /dev/null
+++ b/include/stdc-predef.h
@@ -0,0 +1,36 @@
+/* Copyright (C) 1991-2012 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#ifndef	_STDC_PREDEF_H
+#define	_STDC_PREDEF_H	1
+
+/* This header is separate from features.h so that the compiler can
+   include it implicitly at the start of every compilation.  It must
+   not itself include <features.h> or any other header that includes
+   <features.h> because the implicit include comes before any feature
+   test macros that may be defined in a source file before it first
+   explicitly includes a system header.  GCC knows the name of this
+   header in order to preinclude it.  */
+
+/* We do support the IEC 559 math functionality, real and complex.  */
+#define __STDC_IEC_559__		1
+#define __STDC_IEC_559_COMPLEX__	1
+
+/* wchar_t uses ISO 10646-1 (2nd ed., published 2000-09-15) / Unicode 3.1.  */
+#define __STDC_ISO_10646__		200009L
+
+#endif

-----------------------------------------------------------------------

Summary of changes:
 CONFORMANCE                                   |   13 +++++------
 ChangeLog                                     |    8 +++++++
 Makefile                                      |    2 +-
 NEWS                                          |    6 ++--
 include/features.h                            |   12 +++-------
 malloc/mcheck-init.c => include/stdc-predef.h |   28 +++++++++++++++---------
 6 files changed, 39 insertions(+), 30 deletions(-)
 copy malloc/mcheck-init.c => include/stdc-predef.h (51%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]