summary refs log tree commit diff
path: root/NEWS
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2019-08-13 11:26:00 +0000
committerJoseph Myers <joseph@codesourcery.com>2019-08-13 11:26:00 +0000
commit777d75fbc07b98115f4868c3290eb8a5d1f3a5b2 (patch)
tree163caed043feae9018aeccf3c8c9b5724a3d0a6c /NEWS
parenta33b817f13170b5c24263b92e7e09880fe797d7e (diff)
downloadglibc-777d75fbc07b98115f4868c3290eb8a5d1f3a5b2.tar.gz
glibc-777d75fbc07b98115f4868c3290eb8a5d1f3a5b2.tar.xz
glibc-777d75fbc07b98115f4868c3290eb8a5d1f3a5b2.zip
Add feature test macro _ISOC2X_SOURCE.
This patch starts preparation for C2X support in glibc headers by
adding a feature test macro _ISOC2X_SOURCE and corresponding
__GLIBC_USE (ISOC2X).  (I chose to use the newer __GLIBC_USE style for
this rather than the older __USE_* macros tested with #ifdef.)  As
with other such macros, C2X features are also enabled by compiling for
a standard newer than C17, or by using _GNU_SOURCE.

This patch does not itself enable anything new in the headers for C2X;
that is to be done in followup patches.  (For example, most of the TS
18661-1 functions should be declared for C2X without any
__STDC_WANT_IEC_60559_BFP_EXT__ being needed, but the ones that
18661-1 adds to Annex F because of their close relation to IEEE 754
formats do still need the WANT macro in C2X.)

Once C2X becomes an actual standard we'll presumably move to using the
actual year in the feature test macro and __GLIBC_USE, with some
period when both macro spellings are accepted, as was done with
_ISOC9X_SOURCE.

Tested for x86_64.

	* include/features.h (_ISOC2X_SOURCE): New feature test macro.
	Undefine and define to 1 if [_GNU_SOURCE].
	(__GLIBC_USE_ISOC2X): New macro.  Undefine and redefine depending
	on [_ISOC2X_SOURCE] and [__STDC_VERSION__ > 201710L].
	(__USE_ISOC11): Also define to 1 if [_ISOC2X_SOURCE].
	(__USE_ISOC99): Likewise.
	(__USE_ISOC95): Likewise.
	* manual/creature.texi (_ISOC2X_SOURCE): Document.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS7
1 files changed, 6 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 4326997ddd..8ca7585c2c 100644
--- a/NEWS
+++ b/NEWS
@@ -9,7 +9,12 @@ Version 2.31
 
 Major new features:
 
-  [Add new features here]
+* The GNU C Library now supports a feature test macro _ISOC2X_SOURCE to
+  enable features from the draft ISO C2X standard.  Only some features from
+  this draft standard are supported by the GNU C Library, and as the draft
+  is under active development, the set of features enabled by this macro is
+  liable to change.  Features from C2X are also enabled by _GNU_SOURCE, or
+  by compiling with "gcc -std=gnu2x".
 
 Deprecated and removed features, and other changes affecting compatibility: