]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Refer to C23 in place of C2X in glibc
authorJoseph Myers <josmyers@redhat.com>
Thu, 1 Feb 2024 11:02:01 +0000 (11:02 +0000)
committerJoseph Myers <josmyers@redhat.com>
Thu, 1 Feb 2024 11:02:01 +0000 (11:02 +0000)
WG14 decided to use the name C23 as the informal name of the next
revision of the C standard (notwithstanding the publication date in
2024).  Update references to C2X in glibc to use the C23 name.

This is intended to update everything *except* where it involves
renaming files (the changes involving renaming tests are intended to
be done separately).  In the case of the _ISOC2X_SOURCE feature test
macro - the only user-visible interface involved - support for that
macro is kept for backwards compatibility, while adding
_ISOC23_SOURCE.

Tested for x86_64.

79 files changed:
NEWS
bits/fenv.h
bits/libc-header-start.h
include/features.h
include/limits.h
include/stdio.h
include/stdlib.h
include/wchar.h
libio/bits/stdio-ldbl.h
libio/stdio.h
manual/arith.texi
manual/creature.texi
manual/stdbit.texi
manual/stdio.texi
manual/time.texi
math/bits/mathcalls.h
math/fenv.h
math/gen-tgmath-tests.py
math/libm-test-pow.inc
math/math.h
math/tgmath.h
resolv/tst-inet_addr-binary.c
stdio-common/Makefile
stdio-common/tst-scanf-binary-c11.c
stdio-common/tst-scanf-binary-c2x.c
stdio-common/tst-scanf-binary-gnu11.c
stdio-common/tst-scanf-binary-gnu89.c
stdio-common/tst-scanf-binary-main.c
stdlib/Makefile
stdlib/bits/stdlib-ldbl.h
stdlib/inttypes.h
stdlib/stdint.h
stdlib/stdlib.h
stdlib/strtol.c
stdlib/strtol_l.c
stdlib/strtoll_l.c
stdlib/strtoul_l.c
stdlib/strtoull_l.c
stdlib/tst-strtol-binary-c11.c
stdlib/tst-strtol-binary-c2x.c
stdlib/tst-strtol-binary-gnu11.c
stdlib/tst-strtol-binary-gnu2x.c
stdlib/tst-strtol-binary-main.c
string/string.h
sysdeps/aarch64/bits/fenv.h
sysdeps/alpha/fpu/bits/fenv.h
sysdeps/arm/bits/fenv.h
sysdeps/csky/bits/fenv.h
sysdeps/hppa/fpu/bits/fenv.h
sysdeps/ieee754/ldbl-128ibm-compat/Makefile
sysdeps/ieee754/ldbl-opt/Makefile
sysdeps/loongarch/bits/fenv.h
sysdeps/m68k/bits/fenv.h
sysdeps/microblaze/bits/fenv.h
sysdeps/mips/bits/fenv.h
sysdeps/nios2/bits/fenv.h
sysdeps/powerpc/bits/fenv.h
sysdeps/riscv/bits/fenv.h
sysdeps/s390/fpu/bits/fenv.h
sysdeps/sh/bits/fenv.h
sysdeps/sparc/fpu/bits/fenv.h
sysdeps/x86/fpu/bits/fenv.h
time/time.h
wcsmbs/Makefile
wcsmbs/bits/wchar-ldbl.h
wcsmbs/tst-wcstol-binary-c11.c
wcsmbs/tst-wcstol-binary-c2x.c
wcsmbs/tst-wcstol-binary-gnu11.c
wcsmbs/tst-wcstol-binary-gnu2x.c
wcsmbs/tst-wscanf-binary-c11.c
wcsmbs/tst-wscanf-binary-c2x.c
wcsmbs/tst-wscanf-binary-gnu11.c
wcsmbs/tst-wscanf-binary-gnu89.c
wcsmbs/uchar.h
wcsmbs/wchar.h
wcsmbs/wcstol_l.c
wcsmbs/wcstoll_l.c
wcsmbs/wcstoul_l.c
wcsmbs/wcstoull_l.c

diff --git a/NEWS b/NEWS
index 39a55f5767414fcbfa8efc143cb993aa5b4ed4b7..2d8eaffc580b4c32dee3fb4770b35d37e44fd378 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -14,6 +14,13 @@ Major new features:
   in order to support unsigned __int128 and/or unsigned _BitInt(N) operands
   with arbitrary precisions when supported by the target.
 
+* The GNU C Library now supports a feature test macro _ISOC23_SOURCE to
+  enable features from the ISO C23 standard.  Only some features from
+  this standard are supported by the GNU C Library.  The older name
+  _ISOC2X_SOURCE is still supported.  Features from C23 are also enabled
+  by _GNU_SOURCE, or by compiling with the GCC options -std=c23,
+  -std=gnu23, -std=c2x or -std=gnu2x.
+
 Deprecated and removed features, and other changes affecting compatibility:
 
   [Add deprecations, removals and changes affecting compatibility here]
index 9f19295d652e20c24a54158fba7c613f5e4d62a5..aa0c549d4a8000fe3880b827420c07c9e00a1bfe 100644 (file)
@@ -54,7 +54,7 @@ fenv_t;
 /* If the default argument is used we use this value.  */
 #define FE_DFL_ENV     ((const fenv_t *) -1l)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index d841f5d8cf910b54b23e9e9e16efd0b6d3768f8a..4ab1304b0d5085127273223f78be9e318197b590 100644 (file)
 
 /* ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__
    macro.  Most but not all symbols enabled by that macro in TS
-   18661-1 are enabled unconditionally in C2X.  In C2X, the symbols in
+   18661-1 are enabled unconditionally in C23.  In C23, the symbols in
    Annex F still require a new feature test macro
-   __STDC_WANT_IEC_60559_EXT__ instead (C2X does not define
+   __STDC_WANT_IEC_60559_EXT__ instead (C23 does not define
    __STDC_WANT_IEC_60559_BFP_EXT__), while a few features from TS
-   18661-1 are not included in C2X (and thus should depend on
-   __STDC_WANT_IEC_60559_BFP_EXT__ even when C2X features are
+   18661-1 are not included in C23 (and thus should depend on
+   __STDC_WANT_IEC_60559_BFP_EXT__ even when C23 features are
    enabled).
 
    __GLIBC_USE (IEC_60559_BFP_EXT) controls those features from TS
-   18661-1 not included in C2X.
+   18661-1 not included in C23.
 
-   __GLIBC_USE (IEC_60559_BFP_EXT_C2X) controls those features from TS
-   18661-1 that are also included in C2X (with no feature test macro
-   required in C2X).
+   __GLIBC_USE (IEC_60559_BFP_EXT_C23) controls those features from TS
+   18661-1 that are also included in C23 (with no feature test macro
+   required in C23).
 
    __GLIBC_USE (IEC_60559_EXT) controls those features from TS 18661-1
-   that are included in C2X but conditional on
+   that are included in C23 but conditional on
    __STDC_WANT_IEC_60559_EXT__.  (There are currently no features
    conditional on __STDC_WANT_IEC_60559_EXT__ that are not in TS
    18661-1.)  */
 #else
 # define __GLIBC_USE_IEC_60559_BFP_EXT 0
 #endif
-#undef __GLIBC_USE_IEC_60559_BFP_EXT_C2X
-#if __GLIBC_USE (IEC_60559_BFP_EXT) || __GLIBC_USE (ISOC2X)
-# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 1
+#undef __GLIBC_USE_IEC_60559_BFP_EXT_C23
+#if __GLIBC_USE (IEC_60559_BFP_EXT) || __GLIBC_USE (ISOC23)
+# define __GLIBC_USE_IEC_60559_BFP_EXT_C23 1
 #else
-# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 0
+# define __GLIBC_USE_IEC_60559_BFP_EXT_C23 0
 #endif
 #undef __GLIBC_USE_IEC_60559_EXT
 #if __GLIBC_USE (IEC_60559_BFP_EXT) || defined __STDC_WANT_IEC_60559_EXT__
 /* ISO/IEC TS 18661-4:2015 defines the
    __STDC_WANT_IEC_60559_FUNCS_EXT__ macro.  Other than the reduction
    functions, the symbols from this TS are enabled unconditionally in
-   C2X.  */
+   C23.  */
 #undef __GLIBC_USE_IEC_60559_FUNCS_EXT
 #if defined __USE_GNU || defined __STDC_WANT_IEC_60559_FUNCS_EXT__
 # define __GLIBC_USE_IEC_60559_FUNCS_EXT 1
 #else
 # define __GLIBC_USE_IEC_60559_FUNCS_EXT 0
 #endif
-#undef __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X
-#if __GLIBC_USE (IEC_60559_FUNCS_EXT) || __GLIBC_USE (ISOC2X)
-# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 1
+#undef __GLIBC_USE_IEC_60559_FUNCS_EXT_C23
+#if __GLIBC_USE (IEC_60559_FUNCS_EXT) || __GLIBC_USE (ISOC23)
+# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 1
 #else
-# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 0
+# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 0
 #endif
 
 /* ISO/IEC TS 18661-3:2015 defines the
index fc164d332a20b8bba9ae2b4fffb5a0eddcb147f6..d92503dfed25d3364335accb3da68a5a13fb22ac 100644 (file)
@@ -24,7 +24,8 @@
    __STRICT_ANSI__     ISO Standard C.
    _ISOC99_SOURCE      Extensions to ISO C89 from ISO C99.
    _ISOC11_SOURCE      Extensions to ISO C99 from ISO C11.
-   _ISOC2X_SOURCE      Extensions to ISO C99 from ISO C2X.
+   _ISOC23_SOURCE      Extensions to ISO C99 from ISO C23.
+   _ISOC2X_SOURCE      Old name for _ISOC23_SOURCE.
    __STDC_WANT_LIB_EXT2__
                        Extensions to ISO C99 from TR 27431-2:2010.
    __STDC_WANT_IEC_60559_BFP_EXT__
@@ -34,7 +35,7 @@
    __STDC_WANT_IEC_60559_TYPES_EXT__
                        Extensions to ISO C11 from TS 18661-3:2015.
    __STDC_WANT_IEC_60559_EXT__
-                       ISO C2X interfaces defined only in Annex F.
+                       ISO C23 interfaces defined only in Annex F.
 
    _POSIX_SOURCE       IEEE Std 1003.1.
    _POSIX_C_SOURCE     If ==1, like _POSIX_SOURCE; if >=2 add IEEE Std 1003.2;
 #undef __USE_GNU
 #undef __USE_FORTIFY_LEVEL
 #undef __KERNEL_STRICT_NAMES
-#undef __GLIBC_USE_ISOC2X
+#undef __GLIBC_USE_ISOC23
 #undef __GLIBC_USE_DEPRECATED_GETS
 #undef __GLIBC_USE_DEPRECATED_SCANF
-#undef __GLIBC_USE_C2X_STRTOL
+#undef __GLIBC_USE_C23_STRTOL
 
 /* Suppress kernel-name space pollution unless user expressedly asks
    for it.  */
 # define _DEFAULT_SOURCE       1
 #endif
 
+/* Remap the old name _ISOC2X_SOURCE to _ISOC23_SOURCE.  */
+#ifdef _ISOC2X_SOURCE
+# undef _ISOC2X_SOURCE
+# undef _ISOC23_SOURCE
+# define _ISOC23_SOURCE        1
+#endif
+
 /* If _GNU_SOURCE was defined by the user, turn on all the other features.  */
 #ifdef _GNU_SOURCE
 # undef  _ISOC95_SOURCE
 # define _ISOC99_SOURCE        1
 # undef  _ISOC11_SOURCE
 # define _ISOC11_SOURCE        1
-# undef  _ISOC2X_SOURCE
-# define _ISOC2X_SOURCE        1
+# undef  _ISOC23_SOURCE
+# define _ISOC23_SOURCE        1
 # undef  _POSIX_SOURCE
 # define _POSIX_SOURCE 1
 # undef  _POSIX_C_SOURCE
 #if (defined _DEFAULT_SOURCE                                   \
      || (!defined __STRICT_ANSI__                              \
         && !defined _ISOC99_SOURCE && !defined _ISOC11_SOURCE  \
-        && !defined _ISOC2X_SOURCE                             \
+        && !defined _ISOC23_SOURCE                             \
         && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE  \
         && !defined _XOPEN_SOURCE))
 # undef  _DEFAULT_SOURCE
 # define _DEFAULT_SOURCE       1
 #endif
 
-/* This is to enable the ISO C2X extension.  */
-#if (defined _ISOC2X_SOURCE \
+/* This is to enable the ISO C23 extension.  */
+#if (defined _ISOC23_SOURCE \
      || (defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L))
-# define __GLIBC_USE_ISOC2X    1
+# define __GLIBC_USE_ISOC23    1
 #else
-# define __GLIBC_USE_ISOC2X    0
+# define __GLIBC_USE_ISOC23    0
 #endif
 
 /* This is to enable the ISO C11 extension.  */
-#if (defined _ISOC11_SOURCE || defined _ISOC2X_SOURCE \
+#if (defined _ISOC11_SOURCE || defined _ISOC23_SOURCE \
      || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L))
 # define __USE_ISOC11  1
 #endif
 
 /* This is to enable the ISO C99 extension.  */
 #if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE                  \
-     || defined _ISOC2X_SOURCE                                         \
+     || defined _ISOC23_SOURCE                                         \
      || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
 # define __USE_ISOC99  1
 #endif
 
 /* This is to enable the ISO C90 Amendment 1:1995 extension.  */
 #if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE                  \
-     || defined _ISOC2X_SOURCE                                         \
+     || defined _ISOC23_SOURCE                                         \
      || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199409L))
 # define __USE_ISOC95  1
 #endif
 # define __GLIBC_USE_DEPRECATED_SCANF 0
 #endif
 
-/* ISO C2X added support for a 0b or 0B prefix on binary constants as
+/* ISO C23 added support for a 0b or 0B prefix on binary constants as
    inputs to strtol-family functions (base 0 or 2).  This macro is
    used to condition redirection in headers to allow that redirection
    to be disabled when building those functions, despite _GNU_SOURCE
    being defined.  */
-#if __GLIBC_USE (ISOC2X)
-# define __GLIBC_USE_C2X_STRTOL 1
+#if __GLIBC_USE (ISOC23)
+# define __GLIBC_USE_C23_STRTOL 1
 #else
-# define __GLIBC_USE_C2X_STRTOL 0
+# define __GLIBC_USE_C23_STRTOL 0
 #endif
 
 /* Get definitions of __STDC_* predefined macros, if the compiler has
index 87796f213e9e470180cf755a80b4f17aedae10a6..e5576fcfcbc204b2a60b854fe7ff8b6b3bffb305 100644 (file)
 /* The integer width macros are not defined by GCC's <limits.h> before
    GCC 7, or if _GNU_SOURCE rather than
    __STDC_WANT_IEC_60559_BFP_EXT__ is used to enable this feature.  */
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 # ifndef CHAR_WIDTH
 #  define CHAR_WIDTH 8
 # endif
 #endif /* Use IEC_60559_BFP_EXT.  */
 
 /* The macros for _Bool are not defined by GCC's <limits.h> before GCC
-   11, or if _GNU_SOURCE is defined rather than enabling C2x support
+   11, or if _GNU_SOURCE is defined rather than enabling C23 support
    with -std.  */
-#if __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (ISOC23)
 # ifndef BOOL_MAX
 #  define BOOL_MAX 1
 # endif
index 7e70f95c6d164202363285bb098cd5a69162d952..24f1652f190155ab28303f8572a83d9fa3b8cc47 100644 (file)
@@ -115,7 +115,7 @@ libc_hidden_proto (__isoc23_sscanf)
 libc_hidden_proto (__isoc23_vsscanf)
 libc_hidden_proto (__isoc23_vfscanf)
 
-/* Internal uses of sscanf should call the C2X-compliant version.
+/* Internal uses of sscanf should call the C23-compliant version.
    Unfortunately, symbol redirection is not transitive, so the
    __REDIRECT in the public header does not link up with the above
    libc_hidden_proto.  Bridge the gap with a macro.  */
index 580da9be15adf0c1034986f62dd89aaaf6498c3f..0cab3f5b56fd918fa97a59589ab7e96026c3fc55 100644 (file)
@@ -53,8 +53,8 @@ libc_hidden_proto (__isoc23_strtoul_l)
 libc_hidden_proto (__isoc23_strtoll_l)
 libc_hidden_proto (__isoc23_strtoull_l)
 
-#if __GLIBC_USE (C2X_STRTOL)
-/* Redirect internal uses of these functions to the C2X versions; the
+#if __GLIBC_USE (C23_STRTOL)
+/* Redirect internal uses of these functions to the C23 versions; the
    redirection in the installed header does not work with
    libc_hidden_proto.  */
 # undef strtol
index 484e6b3fef669f835833bd529e2ad570665f01ca..bf3262573642f00b8236b06a3715df186764681c 100644 (file)
@@ -53,8 +53,8 @@ libc_hidden_proto (__isoc23_wcstoul_l)
 libc_hidden_proto (__isoc23_wcstoll_l)
 libc_hidden_proto (__isoc23_wcstoull_l)
 
-#if __GLIBC_USE (C2X_STRTOL)
-/* Redirect internal uses of these functions to the C2X versions; the
+#if __GLIBC_USE (C23_STRTOL)
+/* Redirect internal uses of these functions to the C23 versions; the
    redirection in the installed header does not work with
    libc_hidden_proto.  */
 # undef wcstol
index e81ad173c11c2bf09a7cbbd2c5b35086aaab6189..a0d1de06938a79b5915415854ef933846a5decfe 100644 (file)
@@ -28,7 +28,7 @@ __LDBL_REDIR_DECL (vprintf)
 __LDBL_REDIR_DECL (vsprintf)
 #if !__GLIBC_USE (DEPRECATED_SCANF)
 # if defined __LDBL_COMPAT
-#  if __GLIBC_USE (C2X_STRTOL)
+#  if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (fscanf, __nldbl___isoc23_fscanf)
 __LDBL_REDIR1_DECL (scanf, __nldbl___isoc23_scanf)
 __LDBL_REDIR1_DECL (sscanf, __nldbl___isoc23_sscanf)
@@ -38,7 +38,7 @@ __LDBL_REDIR1_DECL (scanf, __nldbl___isoc99_scanf)
 __LDBL_REDIR1_DECL (sscanf, __nldbl___isoc99_sscanf)
 #  endif
 # elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
-#  if __GLIBC_USE (C2X_STRTOL)
+#  if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (fscanf, __isoc23_fscanfieee128)
 __LDBL_REDIR1_DECL (scanf, __isoc23_scanfieee128)
 __LDBL_REDIR1_DECL (sscanf, __isoc23_sscanfieee128)
@@ -64,7 +64,7 @@ __LDBL_REDIR_DECL (vsnprintf)
 #ifdef __USE_ISOC99
 # if !__GLIBC_USE (DEPRECATED_SCANF)
 #  if defined __LDBL_COMPAT
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (vfscanf, __nldbl___isoc23_vfscanf)
 __LDBL_REDIR1_DECL (vscanf, __nldbl___isoc23_vscanf)
 __LDBL_REDIR1_DECL (vsscanf, __nldbl___isoc23_vsscanf)
@@ -74,7 +74,7 @@ __LDBL_REDIR1_DECL (vscanf, __nldbl___isoc99_vscanf)
 __LDBL_REDIR1_DECL (vsscanf, __nldbl___isoc99_vsscanf)
 #   endif
 #  elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (vfscanf, __isoc23_vfscanfieee128)
 __LDBL_REDIR1_DECL (vscanf, __isoc23_vscanfieee128)
 __LDBL_REDIR1_DECL (vsscanf, __isoc23_vsscanfieee128)
index 6762cffb0f1b7878d9bd82b0b8e951ea3cfeaf78..cbecabe1d9354cfc55787d9b84e3e1c079170a84 100644 (file)
@@ -139,7 +139,7 @@ typedef __fpos64_t fpos64_t;
 #define FOPEN_MAX 16
 
 
-#if __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (ISOC23)
 /* Maximum length of printf output for a NaN.  */
 # define _PRINTF_NAN_LEN_MAX 4
 #endif
@@ -437,7 +437,7 @@ extern int sscanf (const char *__restrict __s,
 #include <bits/floatn.h>
 #if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \
     && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0
-# if __GLIBC_USE (C2X_STRTOL)
+# if __GLIBC_USE (C23_STRTOL)
 #  ifdef __REDIRECT
 extern int __REDIRECT (fscanf, (FILE *__restrict __stream,
                                const char *__restrict __format, ...),
@@ -505,7 +505,7 @@ extern int vsscanf (const char *__restrict __s,
 
 /* Same redirection as above for the v*scanf family.  */
 # if !__GLIBC_USE (DEPRECATED_SCANF)
-#  if __GLIBC_USE (C2X_STRTOL)
+#  if __GLIBC_USE (C23_STRTOL)
 #   if defined __REDIRECT && !defined __LDBL_COMPAT    \
       && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0
 extern int __REDIRECT (vfscanf,
index 2b99cd838994c630bdc90c83f5a992fb097729ec..0742c08ac4f3f4f444e3a174922907b3aa4ebafc 100644 (file)
@@ -1904,7 +1904,7 @@ operation.  These functions, defined by TS 18661-1:2014 and TS
 floating-point number); if @var{x} is not a NaN, they return
 @minus{}1.  They raise no floating-point exceptions even for signaling
 NaNs.  (The return value of @minus{}1 for an argument that is not a
-NaN is specified in C2x; the value was unspecified in TS 18661.)
+NaN is specified in C23; the value was unspecified in TS 18661.)
 @end deftypefun
 
 @deftypefun int setpayload (double *@var{x}, double @var{payload})
@@ -2128,7 +2128,7 @@ are NaN, or either is a signaling NaN, NaN is returned.
 @deftypefunx {long double} fminimuml (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fminimumfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fminimumfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{fminimum} function returns the lesser of the two values @var{x}
 and @var{y}.  Unlike @code{fmin}, if either argument is a NaN, NaN is returned.
@@ -2140,7 +2140,7 @@ Positive zero is treated as greater than negative zero.
 @deftypefunx {long double} fmaximuml (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fmaximumfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fmaximumfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{fmaximum} function returns the greater of the two values @var{x}
 and @var{y}.  Unlike @code{fmax}, if either argument is a NaN, NaN is returned.
@@ -2152,7 +2152,7 @@ Positive zero is treated as greater than negative zero.
 @deftypefunx {long double} fminimum_numl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fminimum_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fminimum_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{fminimum_num} function returns the lesser of the two values
 @var{x} and @var{y}.  If one argument is a number and the other is a
@@ -2165,7 +2165,7 @@ treated as greater than negative zero.
 @deftypefunx {long double} fmaximum_numl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fmaximum_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fmaximum_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{fmaximum_num} function returns the greater of the two values
 @var{x} and @var{y}.  If one argument is a number and the other is a
@@ -2208,7 +2208,7 @@ as the @code{fmax} functions.
 @deftypefunx {long double} fminimum_magl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fminimum_magfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fminimum_magfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 These functions return whichever of the two values @var{x} and @var{y}
 has the smaller absolute value.  If both have the same absolute value,
@@ -2221,7 +2221,7 @@ functions.
 @deftypefunx {long double} fmaximum_magl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fmaximum_magfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fmaximum_magfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 These functions return whichever of the two values @var{x} and @var{y}
 has the greater absolute value.  If both have the same absolute value,
@@ -2234,7 +2234,7 @@ functions.
 @deftypefunx {long double} fminimum_mag_numl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fminimum_mag_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fminimum_mag_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 These functions return whichever of the two values @var{x} and @var{y}
 has the smaller absolute value.  If both have the same absolute value,
@@ -2247,7 +2247,7 @@ functions.
 @deftypefunx {long double} fmaximum_mag_numl (long double @var{x}, long double @var{y})
 @deftypefunx _FloatN fmaximum_mag_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
 @deftypefunx _FloatNx fmaximum_mag_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
-@standards{C2X, math.h}
+@standards{C23, math.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 These functions return whichever of the two values @var{x} and @var{y}
 has the greater absolute value.  If both have the same absolute value,
@@ -2663,12 +2663,12 @@ A nonempty sequence of digits in the radix specified by @var{base}.
 If @var{base} is zero, decimal radix is assumed unless the series of
 digits begins with @samp{0} (specifying octal radix), or @samp{0x} or
 @samp{0X} (specifying hexadecimal radix), or @samp{0b} or @samp{0B}
-(specifying binary radix; only supported when C2X features are
+(specifying binary radix; only supported when C23 features are
 enabled); in other words, the same syntax used for integer constants in C.
 
 Otherwise @var{base} must have a value between @code{2} and @code{36}.
 If @var{base} is @code{16}, the digits may optionally be preceded by
-@samp{0x} or @samp{0X}.  If @var{base} is @code{2}, and C2X features
+@samp{0x} or @samp{0X}.  If @var{base} is @code{2}, and C23 features
 are enabled, the digits may optionally be preceded by
 @samp{0b} or @samp{0B}.  If base has no legal value the value returned
 is @code{0l} and the global variable @code{errno} is set to @code{EINVAL}.
index fa5dd9d6ad9081f6424f0d9811a4fc4529f09bd9..3fc53619eacaf840203f10d5d65bfe90dadb5caa 100644 (file)
@@ -220,11 +220,11 @@ when the compiler uses an earlier language version.
 If this macro is defined, ISO C11 extensions to ISO C99 are included.
 @end defvr
 
-@defvr Macro _ISOC2X_SOURCE
-@standards{C2X, (none)}
-If this macro is defined, ISO C2X extensions to ISO C11 are included.
+@defvr Macro _ISOC23_SOURCE
+@standards{C23, (none)}
+If this macro is defined, ISO C23 extensions to ISO C11 are included.
 Only some features from this draft standard are supported by
-@theglibc{}.
+@theglibc{}.  The older name @code{_ISOC2X_SOURCE} is also supported.
 @end defvr
 
 @defvr Macro __STDC_WANT_LIB_EXT2__
@@ -260,7 +260,7 @@ enabled.  Only some of the features from this TS are supported by
 
 @defvr Macro __STDC_WANT_IEC_60559_EXT__
 @standards{ISO, (none)}
-If you define this macro, ISO C2X features defined in Annex F of that
+If you define this macro, ISO C23 features defined in Annex F of that
 standard are enabled.  This affects declarations of the
 @code{totalorder} functions and functions related to NaN payloads.
 @end defvr
index 8688930f1268dd6de71d675b9ae606c92c754e72..f74d33903a5a664c1dd8cf8e10c07a1c4d00cb3b 100644 (file)
@@ -4,7 +4,7 @@
 
 This chapter contains information about functions and macros for
 determining the endianness of integer types and manipulating the bits
-of unsigned integers.  These functions and macros are from ISO C2X and
+of unsigned integers.  These functions and macros are from ISO C23 and
 are declared in the header file @file{stdbit.h}.
 
 The following macros describe the endianness of integer types.  They
@@ -45,7 +45,7 @@ In GCC 14.1 that includes support for @code{unsigned __int128} and
 @deftypefunx {unsigned int} stdc_leading_zeros_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_leading_zeros_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_leading_zeros_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_leading_zeros} functions count the number of leading
 (most significant) zero bits in @var{x}, starting from the most
@@ -58,7 +58,7 @@ the width of @var{x} in bits.
 @deftypefunx {unsigned int} stdc_leading_ones_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_leading_ones_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_leading_ones_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_leading_ones} functions count the number of leading
 (most significant) one bits in @var{x}, starting from the most
@@ -70,7 +70,7 @@ significant bit of the argument type.
 @deftypefunx {unsigned int} stdc_trailing_zeros_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_trailing_zeros_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_trailing_zeros_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_trailing_zeros} functions count the number of trailing
 (least significant) zero bits in @var{x}, starting from the least
@@ -83,7 +83,7 @@ the width of @var{x} in bits.
 @deftypefunx {unsigned int} stdc_trailing_ones_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_trailing_ones_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_trailing_ones_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_trailing_ones} functions count the number of trailing
 (least significant) one bits in @var{x}, starting from the least
@@ -95,7 +95,7 @@ significant bit of the argument type.
 @deftypefunx {unsigned int} stdc_first_leading_zero_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_first_leading_zero_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_first_leading_zero_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_first_leading_zero} functions return the position of
 the most significant zero bit in @var{x}, counting from the most
@@ -108,7 +108,7 @@ significant bit of @var{x} as 1, or zero if there is no zero bit in
 @deftypefunx {unsigned int} stdc_first_leading_one_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_first_leading_one_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_first_leading_one_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_first_leading_one} functions return the position of the
 most significant one bit in @var{x}, counting from the most
@@ -121,7 +121,7 @@ significant bit of @var{x} as 1, or zero if there is no one bit in
 @deftypefunx {unsigned int} stdc_first_trailing_zero_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_first_trailing_zero_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_first_trailing_zero_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_first_trailing_zero} functions return the position of
 the least significant zero bit in @var{x}, counting from the least
@@ -134,7 +134,7 @@ significant bit of @var{x} as 1, or zero if there is no zero bit in
 @deftypefunx {unsigned int} stdc_first_trailing_one_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_first_trailing_one_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_first_trailing_one_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_first_trailing_one} functions return the position of
 the least significant one bit in @var{x}, counting from the least
@@ -147,7 +147,7 @@ significant bit of @var{x} as 1, or zero if there is no one bit in
 @deftypefunx {unsigned int} stdc_count_zeros_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_count_zeros_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_count_zeros_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_count_zeros} functions count the number of zero bits in
 @var{x}.
@@ -158,7 +158,7 @@ The @code{stdc_count_zeros} functions count the number of zero bits in
 @deftypefunx {unsigned int} stdc_count_ones_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_count_ones_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_count_ones_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_count_ones} functions count the number of one bits in
 @var{x}.
@@ -169,7 +169,7 @@ The @code{stdc_count_ones} functions count the number of one bits in
 @deftypefunx {_Bool} stdc_has_single_bit_ui (unsigned int @var{x})
 @deftypefunx {_Bool} stdc_has_single_bit_ul (unsigned long int @var{x})
 @deftypefunx {_Bool} stdc_has_single_bit_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_has_single_bit} functions return whether @var{x} has
 exactly one bit set to one.
@@ -180,7 +180,7 @@ exactly one bit set to one.
 @deftypefunx {unsigned int} stdc_bit_width_ui (unsigned int @var{x})
 @deftypefunx {unsigned int} stdc_bit_width_ul (unsigned long int @var{x})
 @deftypefunx {unsigned int} stdc_bit_width_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_bit_width} functions return the minimum number of bits
 needed to store @var{x}, not counting leading zero bits.  If @var{x}
@@ -192,7 +192,7 @@ is zero, they return zero.
 @deftypefunx {unsigned int} stdc_bit_floor_ui (unsigned int @var{x})
 @deftypefunx {unsigned long int} stdc_bit_floor_ul (unsigned long int @var{x})
 @deftypefunx {unsigned long long int} stdc_bit_floor_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_bit_floor} functions return the largest integer power
 of two that is less than or equal to @var{x}.  If @var{x} is zero,
@@ -204,7 +204,7 @@ they return zero.
 @deftypefunx {unsigned int} stdc_bit_ceil_ui (unsigned int @var{x})
 @deftypefunx {unsigned long int} stdc_bit_ceil_ul (unsigned long int @var{x})
 @deftypefunx {unsigned long long int} stdc_bit_ceil_ull (unsigned long long int @var{x})
-@standards{C2X, stdbit.h}
+@standards{C23, stdbit.h}
 @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
 The @code{stdc_bit_ceil} functions return the smallest integer power
 of two that is greater than or equal to @var{x}.  If this cannot be
index 002fce7a10e971073189494ed9d64dfb1d0c9cc4..f5e289d58a1fa16cc899aae8868dabcad1c70860 100644 (file)
@@ -1828,8 +1828,8 @@ output, but are different when used with @code{scanf} for input
 @item @samp{%b}, @samp{%B}
 Print an integer as an unsigned binary number.  @samp{%b} uses
 lower-case @samp{b} with the @samp{#} flag and @samp{%B} uses
-upper-case.  @samp{%b} is an ISO C2X feature; @samp{%B} is an
-optional ISO C2X feature.  @xref{Integer Conversions}, for
+upper-case.  @samp{%b} is an ISO C23 feature; @samp{%B} is an
+optional ISO C23 feature.  @xref{Integer Conversions}, for
 details.
 
 @item @samp{%o}
@@ -2036,7 +2036,7 @@ taking signed integers, or @code{uint@var{n}_t} or
 taking unsigned integers.  If the type is narrower than @code{int},
 the promoted argument is converted back to the specified type.
 
-This modifier was introduced in @w{ISO C2X}.
+This modifier was introduced in @w{ISO C23}.
 
 @item wf@var{n}
 Specifies that the argument is a @code{int_fast@var{n}_t} or
@@ -2044,7 +2044,7 @@ Specifies that the argument is a @code{int_fast@var{n}_t} or
 than @code{int}, the promoted argument is converted back to the
 specified type.
 
-This modifier was introduced in @w{ISO C2X}.
+This modifier was introduced in @w{ISO C23}.
 
 @item z
 @itemx Z
@@ -2144,7 +2144,7 @@ specifier is @samp{%a}, @samp{%e}, @samp{%f}, or @samp{%g} and it is
 @w{[@code{-}]@code{INF}} or @code{NAN} respectively if the conversion is
 @samp{%A}, @samp{%E}, @samp{%F} or @samp{%G}.  On some implementations, a NaN
 may result in longer output with information about the payload of the
-NaN; ISO C2X defines a macro @code{_PRINTF_NAN_LEN_MAX} giving the
+NaN; ISO C23 defines a macro @code{_PRINTF_NAN_LEN_MAX} giving the
 maximum length of such output.
 
 The following flags can be used to modify the behavior:
@@ -3547,7 +3547,7 @@ Input Conversions}.
 
 @item @samp{%b}
 Matches an unsigned integer written in binary radix.  This is an ISO
-C2X feature.  @xref{Numeric Input Conversions}.
+C23 feature.  @xref{Numeric Input Conversions}.
 
 @item @samp{%o}
 Matches an unsigned integer written in octal radix.
@@ -3720,13 +3720,13 @@ Specifies that the argument is an @code{int@var{n}_t *} or
 @code{uint@var{n}_t *} or @code{uint_least@var{n}_t *} (which are the
 same type).
 
-This modifier was introduced in @w{ISO C2X}.
+This modifier was introduced in @w{ISO C23}.
 
 @item wf@var{n}
 Specifies that the argument is an @code{int_fast@var{n}_t *} or
 @code{uint_fast@var{n}_t *}.
 
-This modifier was introduced in @w{ISO C2X}.
+This modifier was introduced in @w{ISO C23}.
 
 @item z
 Specifies that the argument is a @code{size_t *}.
index 7d9efc7c6f5b8a43456d3daf423b89fe0e72bcba..dd77d3db049cf46328bd3ba9c027546381e89e9e 100644 (file)
@@ -1493,7 +1493,7 @@ With @code{%B}, @code{%b}, and @code{%h}: use the grammatical form for
 month names that is appropriate when the month is named by itself,
 rather than the form that is appropriate when the month is used as
 part of a complete date.  The @code{%OB} and @code{%Ob} formats are a
-C2X feature, specified in C2X to use the locale's `alternative' month
+C23 feature, specified in C23 to use the locale's `alternative' month
 name; @theglibc{} extends this specification to say that the form used
 in a complete date is the default and the form naming the month by
 itself is the alternative.
@@ -1516,14 +1516,14 @@ The full weekday name according to the current locale.
 @item %b
 The abbreviated month name according to the current locale, in the
 grammatical form used when the month is part of a complete date.
-As a C2X feature (with a more detailed specification in @theglibc{}),
+As a C23 feature (with a more detailed specification in @theglibc{}),
 the @code{O} modifier can be used (@code{%Ob}) to get the grammatical
 form used when the month is named by itself.
 
 @item %B
 The full month name according to the current locale, in the
 grammatical form used when the month is part of a complete date.
-As a C2X feature (with a more detailed specification in @theglibc{}),
+As a C23 feature (with a more detailed specification in @theglibc{}),
 the @code{O} modifier can be used (@code{%OB}) to get the grammatical
 form used when the month is named by itself.
 
index 4916ffb8b6a385ac135e49d0d0d5c2a0c201e96b..f46d3000b297970bce56a4e0f1f987148ccc2cb7 100644 (file)
@@ -109,7 +109,7 @@ __MATHCALL_VEC (log10,, (_Mdouble_ __x));
 /* Break VALUE into integral and fractional parts.  */
 __MATHCALL (modf,, (_Mdouble_ __x, _Mdouble_ *__iptr)) __nonnull ((2));
 
-#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C23)
 /* Compute exponent to base ten.  */
 __MATHCALL_VEC (exp10,, (_Mdouble_ __x));
 #endif
@@ -264,7 +264,7 @@ __MATHCALL (nextafter,, (_Mdouble_ __x, _Mdouble_ __y));
 __MATHCALL (nexttoward,, (_Mdouble_ __x, long double __y));
 # endif
 
-# if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN
+# if __GLIBC_USE (IEC_60559_BFP_EXT_C23) || __MATH_DECLARING_FLOATN
 /* Return X - epsilon.  */
 __MATHCALL (nextdown,, (_Mdouble_ __x));
 /* Return X + epsilon.  */
@@ -283,7 +283,7 @@ __MATHCALL (scalbn,, (_Mdouble_ __x, int __n));
 __MATHDECL (int,ilogb,, (_Mdouble_ __x));
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23) || __MATH_DECLARING_FLOATN
 /* Like ilogb, but returning long int.  */
 __MATHDECL (long int, llogb,, (_Mdouble_ __x));
 #endif
@@ -328,7 +328,7 @@ __MATHDECL (long long int,llround,, (_Mdouble_ __x));
 /* Return positive difference between X and Y.  */
 __MATHCALL (fdim,, (_Mdouble_ __x, _Mdouble_ __y));
 
-# if !__MATH_DECLARING_FLOATN || defined __USE_GNU || !__GLIBC_USE (ISOC2X)
+# if !__MATH_DECLARING_FLOATN || defined __USE_GNU || !__GLIBC_USE (ISOC23)
 /* Return maximum numeric value from X and Y.  */
 __MATHCALLX (fmax,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 
@@ -340,7 +340,7 @@ __MATHCALLX (fmin,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 __MATHCALL (fma,, (_Mdouble_ __x, _Mdouble_ __y, _Mdouble_ __z));
 #endif /* Use ISO C99.  */
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23) || __MATH_DECLARING_FLOATN
 /* Round X to nearest integer value, rounding halfway cases to even.  */
 __MATHCALLX (roundeven,, (_Mdouble_ __x), (__const__));
 
@@ -372,7 +372,7 @@ __MATHDECL_1 (int, canonicalize,, (_Mdouble_ *__cx, const _Mdouble_ *__x));
 
 #if (__GLIBC_USE (IEC_60559_BFP_EXT)                           \
      || (__MATH_DECLARING_FLOATN                               \
-        && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))))
+        && (defined __USE_GNU || !__GLIBC_USE (ISOC23))))
 /* Return value with maximum magnitude.  */
 __MATHCALLX (fmaxmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 
@@ -380,7 +380,7 @@ __MATHCALLX (fmaxmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 __MATHCALLX (fminmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 #endif
 
-#if __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (ISOC23)
 /* Return maximum value from X and Y.  */
 __MATHCALLX (fmaximum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
 
index 33548fa9432c776b0934510c05fd4a3484595bd8..72af93bd19bc0c928905ec079aaceb1d5f1ebb19 100644 (file)
@@ -77,7 +77,7 @@ extern int fegetexceptflag (fexcept_t *__flagp, int __excepts) __THROW;
 /* Raise the supported exceptions represented by EXCEPTS.  */
 extern int feraiseexcept (int __excepts) __THROW;
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Set the supported exception flags represented by EXCEPTS, without
    causing enabled traps to be taken.  */
 extern int fesetexcept (int __excepts) __THROW;
@@ -91,7 +91,7 @@ extern int fesetexceptflag (const fexcept_t *__flagp, int __excepts) __THROW;
    currently set.  */
 extern int fetestexcept (int __excepts) __THROW;
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Determine which of subset of the exceptions specified by EXCEPTS
    are set in *FLAGP.  */
 extern int fetestexceptflag (const fexcept_t *__flagp, int __excepts) __THROW;
@@ -130,7 +130,7 @@ extern int feupdateenv (const fenv_t *__envp) __THROW;
 
 /* Control modes.  */
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Store the current floating-point control modes in the object
    pointed to by MODEP.  */
 extern int fegetmode (femode_t *__modep) __THROW;
@@ -143,7 +143,7 @@ extern int fesetmode (const femode_t *__modep) __THROW;
 
 /* NaN support.  */
 
-#if (__GLIBC_USE (IEC_60559_BFP_EXT_C2X)               \
+#if (__GLIBC_USE (IEC_60559_BFP_EXT_C23)               \
      && defined FE_INVALID                     \
      && defined __SUPPORT_SNAN__)
 # define FE_SNANS_ALWAYS_SIGNAL        1
index f6f5c5a71df8f95a06df9d3dfa946bdeb88d80ba..216e4640ef265c7129b9e014d9598b14508df350 100755 (executable)
@@ -25,7 +25,7 @@
 # complex integer types, which are a GNU extension, but are currently
 # disabled here because they do not work properly with tgmath.h).
 
-# C2x makes the <tgmath.h> rules for selecting a function to call
+# C23 makes the <tgmath.h> rules for selecting a function to call
 # correspond to the usual arithmetic conversions (applied successively
 # to the arguments for generic parameters in order), which choose the
 # type whose set of values contains that of the other type (undefined
@@ -743,7 +743,7 @@ class Tests(object):
                 self.add_tests(prefix + fn, ret, ['r'] * args)
         # TS 18661-4 functions.
         self.add_tests('exp10', 'r', ['r'])
-        # C2X functions.
+        # C23 functions.
         self.add_tests('fmaximum', 'r', ['r', 'r'])
         self.add_tests('fmaximum_mag', 'r', ['r', 'r'])
         self.add_tests('fmaximum_num', 'r', ['r', 'r'])
index 314cd410911453570f374b29442e3e1d45766b06..914cde0a8a84759bc715acf991db7d6ca3a7cddc 100644 (file)
@@ -249,7 +249,7 @@ static const struct test_ff_f_data pow_test_data[] =
     TEST_ff_f (pow, 0, plus_infty, 0, ERRNO_UNCHANGED),
     TEST_ff_f (pow, minus_zero, plus_infty, 0, ERRNO_UNCHANGED),
     /* C99 erroneously specified a divide-by-zero exception here,
-       which is not permitted in C2x (C11 specified it as optional).
+       which is not permitted in C23 (C11 specified it as optional).
        See <http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1515.pdf>
        and
        <http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2271.pdf>.  */
index a1631a8c24804d368fad845259eb7ef2802b6962..1e300c4223be9ccf0dfdf6c8578646f1e8866a24 100644 (file)
@@ -114,37 +114,37 @@ __BEGIN_DECLS
 #endif
 #if (__HAVE_FLOAT16                                    \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF16 (__builtin_nansf16 (""))
 #endif
 #if (__HAVE_FLOAT32                                    \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF32 (__builtin_nansf32 (""))
 #endif
 #if (__HAVE_FLOAT64                                    \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF64 (__builtin_nansf64 (""))
 #endif
 #if (__HAVE_FLOAT128                                   \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF128 (__builtin_nansf128 (""))
 #endif
 #if (__HAVE_FLOAT32X                                   \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF32X (__builtin_nansf32x (""))
 #endif
 #if (__HAVE_FLOAT64X                                   \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF64X (__builtin_nansf64x (""))
 #endif
 #if (__HAVE_FLOAT128X                                  \
      && __GLIBC_USE (IEC_60559_TYPES_EXT)              \
-     && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))
+     && (defined __USE_GNU || !__GLIBC_USE (ISOC23)))
 # define SNANF128X (__builtin_nansf128x (""))
 #endif
 
@@ -214,7 +214,7 @@ typedef _Float128x double_t;
 #  define FP_ILOGBNAN  2147483647
 # endif
 #endif
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 # if __WORDSIZE == 32
 #  define __FP_LONG_MAX 0x7fffffffL
 # else
@@ -246,7 +246,7 @@ typedef _Float128x double_t;
 
 #include <bits/fp-fast.h>
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Rounding direction macros for fromfp functions.  */
 enum
   {
@@ -558,7 +558,7 @@ extern double __REDIRECT_NTH (nexttoward, (double __x, long double __y),
 #define __MATHCALL_NARROW(func, redir, nargs)  \
   __MATHCALL_NARROW_NORMAL (func, nargs)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 
 # define _Mret_ float
 # define _Marg_ double
@@ -1051,7 +1051,7 @@ enum
 
 #endif /* Use ISO C99.  */
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 # include <bits/iscanonical.h>
 
 /* Return nonzero value if X is a signaling NaN.  */
@@ -1332,7 +1332,7 @@ iszero (__T __val)
 # endif
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* An expression whose type has the widest of the evaluation formats
    of X and Y (which are of floating-point types).  */
 # if __FLT_EVAL_METHOD__ == 2 || __FLT_EVAL_METHOD__ > 64
index d3654e8cb658cadd90e7390a07da4063518b9e6c..dbfa92d51d9a156a14316d3db6dcab8efe251d00 100644 (file)
    versions before GCC 13 have __builtin_tgmath semantics that, when
    integer arguments are passed to narrowing macros returning
    _Float32x, or non-narrowing macros with at least two generic
-   arguments, do not always correspond to the C2X semantics, so more
+   arguments, do not always correspond to the C23 semantics, so more
    complicated macro definitions are also used in some cases for
    versions from GCC 8 to GCC 12.  */
 
 #define __HAVE_BUILTIN_TGMATH __GNUC_PREREQ (8, 0)
-#define __HAVE_BUILTIN_TGMATH_C2X __GNUC_PREREQ (13, 0)
+#define __HAVE_BUILTIN_TGMATH_C23 __GNUC_PREREQ (13, 0)
 
 #if __GNUC_PREREQ (2, 7)
 
   __builtin_tgmath (__TGMATH_NARROW_FUNCS_F64 (F) (X), (Y))
 #  define __TGMATH_3_NARROW_F64(F, X, Y, Z)                            \
   __builtin_tgmath (__TGMATH_NARROW_FUNCS_F64 (F) (X), (Y), (Z))
-#  if __HAVE_FLOAT128 && __HAVE_BUILTIN_TGMATH_C2X
+#  if __HAVE_FLOAT128 && __HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_1_NARROW_F32X(F, X)                                \
   __builtin_tgmath (__TGMATH_NARROW_FUNCS_F32X (F) (X))
 #   define __TGMATH_2_NARROW_F32X(F, X, Y)                     \
 
 # endif
 
-# if !__HAVE_BUILTIN_TGMATH_C2X
+# if !__HAVE_BUILTIN_TGMATH_C23
 #  ifdef __NO_LONG_DOUBLE_MATH
 #   define __tgml(fct) fct
 #  else
                             __complex_integer_type (__typeof__ (+(expr))))
 
 /* The tgmath real type of EXPR1 combined with EXPR2, without handling
-   the C2X rule of interpreting integer arguments as _Float32x if any
+   the C23 rule of interpreting integer arguments as _Float32x if any
    argument is _FloatNx.  */
 #  define __tgmath_real_type2_base(expr1, expr2)                       \
   __typeof ((__tgmath_real_type (expr1)) 0 + (__tgmath_real_type (expr2)) 0)
 
 /* The tgmath complex type of EXPR1 combined with EXPR2, without
-   handling the C2X rule of interpreting integer arguments as
+   handling the C23 rule of interpreting integer arguments as
    _Float32x if any argument is _FloatNx.  */
 #  define __tgmath_complex_type2_base(expr1, expr2)    \
   __typeof ((__tgmath_complex_type (expr1)) 0          \
            + (__tgmath_complex_type (expr2)) 0)
 
 /* The tgmath real type of EXPR1 combined with EXPR2 and EXPR3,
-   without handling the C2X rule of interpreting integer arguments as
+   without handling the C23 rule of interpreting integer arguments as
    _Float32x if any argument is _FloatNx.  */
 #  define __tgmath_real_type3_base(expr1, expr2, expr3)        \
   __typeof ((__tgmath_real_type (expr1)) 0             \
 #   define __TGMATH_CF128(arg_comb, fct, cfct, arg_call) /* Nothing.  */
 #  endif
 
-# endif /* !__HAVE_BUILTIN_TGMATH_C2X.  */
+# endif /* !__HAVE_BUILTIN_TGMATH_C23.  */
 
 /* We have two kinds of generic macros: to support functions which are
    only defined on real valued parameters and those which are defined
   __TGMATH_2 (Fct, (Val1), (Val2))
 #  define __TGMATH_BINARY_FIRST_REAL_STD_ONLY(Val1, Val2, Fct) \
   __TGMATH_2STD (Fct, (Val1), (Val2))
-#  if __HAVE_BUILTIN_TGMATH_C2X
+#  if __HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_BINARY_REAL_ONLY(Val1, Val2, Fct)  \
   __TGMATH_2 (Fct, (Val1), (Val2))
 #  endif
 #  define __TGMATH_BINARY_REAL_STD_ONLY(Val1, Val2, Fct)       \
   __TGMATH_2STD (Fct, (Val1), (Val2))
-#  if __HAVE_BUILTIN_TGMATH_C2X
+#  if __HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY(Val1, Val2, Val3, Fct) \
   __TGMATH_3 (Fct, (Val1), (Val2), (Val3))
 #   define __TGMATH_TERNARY_REAL_ONLY(Val1, Val2, Val3, Fct)   \
   __TGMATH_1C (Fct, Cfct, (Val))
 #  define __TGMATH_UNARY_REAL_IMAG_RET_REAL_SAME(Val, Cfct)    \
   __TGMATH_1 (Cfct, (Val))
-#  if __HAVE_BUILTIN_TGMATH_C2X
+#  if __HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_BINARY_REAL_IMAG(Val1, Val2, Fct, Cfct)    \
   __TGMATH_2C (Fct, Cfct, (Val1), (Val2))
 #  endif
                     : (__tgmath_real_type (Val1)) __tgml(Fct) (Val1, Val2)))
 # endif
 
-# if !__HAVE_BUILTIN_TGMATH_C2X
+# if !__HAVE_BUILTIN_TGMATH_C23
 #  define __TGMATH_BINARY_REAL_ONLY(Val1, Val2, Fct) \
      (__extension__ ((sizeof ((Val1) + (Val2)) > sizeof (double)             \
                      && __builtin_classify_type ((Val1) + (Val2)) == 8)      \
                       Fct##f (Val1, Val2)))
 # endif
 
-# if !__HAVE_BUILTIN_TGMATH_C2X
+# if !__HAVE_BUILTIN_TGMATH_C23
 #  define __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY(Val1, Val2, Val3, Fct) \
      (__extension__ ((sizeof ((Val1) + (Val2)) > sizeof (double)             \
                      && __builtin_classify_type ((Val1) + (Val2)) == 8)      \
   __TGMATH_UNARY_REAL_IMAG_RET_REAL ((Val), Cfct, Cfct)
 # endif
 
-# if !__HAVE_BUILTIN_TGMATH_C2X
+# if !__HAVE_BUILTIN_TGMATH_C23
 /* XXX This definition has to be changed as soon as the compiler understands
    the imaginary keyword.  */
 #  define __TGMATH_BINARY_REAL_IMAG(Val1, Val2, Fct, Cfct) \
    distinguished using sizeof (or at all if the types are typedefs
    rather than different types, in which case we err on the side of
    using the wider type if unsure).  */
-# if !__HAVE_BUILTIN_TGMATH_C2X
+# if !__HAVE_BUILTIN_TGMATH_C23
 #  if __HAVE_FLOATN_NOT_TYPEDEF
 #   define __TGMATH_NARROW_F32X_USE_F64X(X)                    \
   !__builtin_types_compatible_p (__typeof (+(X)), _Float64)
                  F ## f64x (X, Y, Z)                                   \
                  : F ## f128 (X, Y, Z)))
 #  endif
-#  if !__HAVE_BUILTIN_TGMATH_C2X
+#  if !__HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_1_NARROW_F32X(F, X)                                        \
   (__extension__ (sizeof ((__tgmath_real_type (X)) 0) > sizeof (_Float64) \
                  || __TGMATH_NARROW_F32X_USE_F64X (X)                  \
 #   define __TGMATH_3_NARROW_F64(F, X, Y, Z)   \
   (F ## f128 (X, Y, Z))
 #  endif
-#  if !__HAVE_BUILTIN_TGMATH_C2X
+#  if !__HAVE_BUILTIN_TGMATH_C23
 #   define __TGMATH_1_NARROW_F32X(F, X)                                        \
   (__extension__ (sizeof ((__tgmath_real_type (X)) 0) > sizeof (_Float32x) \
                  || __TGMATH_NARROW_F32X_USE_F64X (X)                  \
 /* Compute base-2 logarithm of X.  */
 #define log2(Val) __TGMATH_UNARY_REAL_ONLY (Val, log2)
 
-#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C23)
 /* Compute exponent to base ten.  */
 #define exp10(Val) __TGMATH_UNARY_REAL_ONLY (Val, exp10)
 #endif
    prevailing rounding mode.  */
 #define rint(Val) __TGMATH_UNARY_REAL_ONLY (Val, rint)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Return X - epsilon.  */
 # define nextdown(Val) __TGMATH_UNARY_REAL_ONLY (Val, nextdown)
 /* Return X + epsilon.  */
 /* Return positive difference between X and Y.  */
 #define fdim(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fdim)
 
-#if __GLIBC_USE (ISOC2X) && !defined __USE_GNU
+#if __GLIBC_USE (ISOC23) && !defined __USE_GNU
 /* Return maximum numeric value from X and Y.  */
 # define fmax(Val1, Val2) __TGMATH_BINARY_REAL_STD_ONLY (Val1, Val2, fmax)
 
 #define fma(Val1, Val2, Val3) \
      __TGMATH_TERNARY_REAL_ONLY (Val1, Val2, Val3, fma)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Round X to nearest integer value, rounding halfway cases to even.  */
 # define roundeven(Val) __TGMATH_UNARY_REAL_ONLY (Val, roundeven)
 
 # define fminmag(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminmag)
 #endif
 
-#if __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (ISOC23)
 /* Return maximum value from X and Y.  */
 # define fmaximum(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fmaximum)
 
 
 /* Narrowing functions.  */
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 
 /* Add.  */
 # define fadd(Val1, Val2) __TGMATH_2_NARROW_F (fadd, Val1, Val2)
index fe7ec63e66400c3f51dc26072b919c2a833ae986..abbb745467b2114f004d2e99945c8b07c89ae5e8 100644 (file)
@@ -1,4 +1,4 @@
-/* Test inet_addr does not accept C2X binary constants.
+/* Test inet_addr does not accept C23 binary constants.
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
index e312565f3b671463267ae37b065580965c5c1b80..60a7f4cff3a4a004b5efaf711cefb5ee9fa8b97a 100644 (file)
@@ -490,8 +490,9 @@ CFLAGS-tst-bz11319-fortify2.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2
 
 CFLAGS-tst-memstream-string.c += -fno-builtin-fprintf
 
-# Some versions of GCC supported for building glibc do not support -std=c2x, so
-# the test for that version uses -std=c11 and then _ISOC2X_SOURCE is defined in
+# Some versions of GCC supported for building glibc do not support -std=c23
+# (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
+# the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
 # the test as needed.
 CFLAGS-tst-scanf-binary-c11.c += -std=c11 -DOBJPFX=\"$(objpfx)\"
 CFLAGS-tst-scanf-binary-c2x.c += -std=c11 -DOBJPFX=\"$(objpfx)\"
index b8713aeb425d5f1ca36932ffff9a61a5ddf05598..1d24f2eb2969a51e08491df8c89356984db8b911 100644 (file)
@@ -1,4 +1,4 @@
-/* Test scanf functions with C2X binary integers (narrow strings,
+/* Test scanf functions with C23 binary integers (narrow strings,
    no extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -22,7 +22,7 @@
 #define CHAR char
 #define FNW
 #define L_(C) C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define STD "c11"
 
 #include <tst-scanf-binary-main.c>
index 1b1175fcb9fd840fe347e40c47e84dc4f494242b..ebb9f049379879d57f0d0777e0bfeff8ab4a3e09 100644 (file)
@@ -1,4 +1,4 @@
-/* Test scanf functions with C2X binary integers (narrow strings,
+/* Test scanf functions with C23 binary integers (narrow strings,
    no extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    <https://www.gnu.org/licenses/>.  */
 
 /* Some versions of GCC supported for building glibc do not support
-   -std=c2x.  */
+   -std=c23 or -std=c2x.  */
 #undef _GNU_SOURCE
-#define _ISOC2X_SOURCE
+#define _ISOC23_SOURCE
 
 #define CHAR char
 #define FNW
 #define L_(C) C
-#define TEST_C2X 1
-#define STD "c2x"
+#define TEST_C23 1
+#define STD "c23"
 
 #include <tst-scanf-binary-main.c>
index 433b7de34c9be43219bd989d057e889fc8ea1115..4524b7cda852b11365a3d1de5f4657a15b2b8f2c 100644 (file)
@@ -1,4 +1,4 @@
-/* Test scanf functions with C2X binary integers (narrow strings,
+/* Test scanf functions with C23 binary integers (narrow strings,
    GNU extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -20,7 +20,7 @@
 #define CHAR char
 #define FNW
 #define L_(C) C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define STD "gnu11"
 
 #include <tst-scanf-binary-main.c>
index 61bb60c717f01b72a90e958cd5db331a4a8e4479..0a209b37c18899464b2a46d9733c315f446874f9 100644 (file)
@@ -1,4 +1,4 @@
-/* Test scanf functions with C2X binary integers (narrow strings,
+/* Test scanf functions with C23 binary integers (narrow strings,
    GNU extensions to C89).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -20,7 +20,7 @@
 #define CHAR char
 #define FNW
 #define L_(C) C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define STD "gnu89"
 
 #include <tst-scanf-binary-main.c>
index 8745d09c22dd235441bed61d17558006eacc5517..b1038898c9c4e1f229cf52b9cbfd47fba444bc00 100644 (file)
@@ -1,4 +1,4 @@
-/* Test scanf functions with C2X binary integers.
+/* Test scanf functions with C23 binary integers.
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -78,7 +78,7 @@ one_check (const CHAR *s, int expected, char expected_c)
   TEST_VERIFY_EXIT (0 <= ret);
   xfclose (fp);
 
-  if (!TEST_C2X)
+  if (!TEST_C23)
     {
       expected = 0;
       expected_c = s[0] == L_('-') ? s[2] : s[1];
@@ -340,7 +340,7 @@ one_check_b (const CHAR *s, int expected, char expected_c)
 static void
 one_check_scnb (const CHAR *s, int expected, char expected_c)
 {
-#if TEST_C2X || defined _GNU_SOURCE
+#if TEST_C23 || defined _GNU_SOURCE
   CHECK_SCNB (uint8_t, SCNb8, s, (uint8_t) expected, expected_c);
   CHECK_SCNB (uint16_t, SCNb16, s, (uint16_t) expected, expected_c);
   CHECK_SCNB (uint32_t, SCNb32, s, (uint32_t) expected, expected_c);
index 9898cc5d8a56062578a4c6f3c91e17b34b6bac76..e9f9c7856dcb38cf54a6878be61301a8ebaac90c 100644 (file)
@@ -522,9 +522,10 @@ CFLAGS-tst-makecontext2.c += $(stack-align-test-flags)
 
 CFLAGS-testmb.c += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Werror
 
-# Some versions of GCC supported for building glibc do not support -std=c2x
-# or -std=gnu2x, so the tests for those versions use -std=c11 and -std=gnu11
-# and then _ISOC2X_SOURCE is defined in the test as needed.
+# Some versions of GCC supported for building glibc do not support -std=c23
+# or -std=gnu23 (added in GCC 14), or the older names -std=c2x or -std=gnu2x
+# (added in GCC 9), so the tests for those versions use -std=c11 and -std=gnu11
+# and then _ISOC23_SOURCE is defined in the test as needed.
 CFLAGS-tst-strtol-binary-c11.c += -std=c11
 CFLAGS-tst-strtol-binary-c2x.c += -std=c11
 CFLAGS-tst-strtol-binary-gnu11.c += -std=gnu11
index 4335a9b36c3ede5f575d0ab268073744d7ac7db4..8afdeb50df85c6fc16f80598d45808423f10c89f 100644 (file)
@@ -36,7 +36,7 @@ __LDBL_REDIR1_DECL (strtold_l, __strtoieee128_l)
 # endif
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 # ifdef __LDBL_COMPAT
 __LDBL_REDIR1_DECL (strfroml, strfromd)
 # else
index 2ab40635b8fbd179c12c307d5d7638b4098e0b5e..cfda146aa9b956dc9f462bd65fb828e5929bc90b 100644 (file)
@@ -165,7 +165,7 @@ typedef wchar_t __gwchar_t;
 # define PRIXPTR       __PRIPTR_PREFIX "X"
 
 /* Binary notation.  */
-# if __GLIBC_USE (ISOC2X)
+# if __GLIBC_USE (ISOC23)
 #  define PRIb8                "b"
 #  define PRIb16       "b"
 #  define PRIb32       "b"
@@ -303,7 +303,7 @@ typedef wchar_t __gwchar_t;
 
 
 /* Binary notation.  */
-# if __GLIBC_USE (ISOC2X)
+# if __GLIBC_USE (ISOC23)
 #  define SCNb8                "hhb"
 #  define SCNb16       "hb"
 #  define SCNb32       "b"
@@ -374,7 +374,7 @@ extern uintmax_t wcstoumax (const __gwchar_t *__restrict __nptr,
 
 /* Versions of the above functions that handle '0b' and '0B' prefixes
    in base 0 or 2.  */
-#if __GLIBC_USE (C2X_STRTOL)
+#if __GLIBC_USE (C23_STRTOL)
 # ifdef __REDIRECT
 extern intmax_t __REDIRECT_NTH (strtoimax, (const char *__restrict __nptr,
                                            char **__restrict __endptr,
index 01a9abc9e5c153e10894592f457ae78277d87008..bb3e8b5cc61fb3df8842225d2286de67e6f2ffe2 100644 (file)
@@ -262,7 +262,7 @@ typedef __uintmax_t         uintmax_t;
 #  define UINTMAX_C(c) c ## ULL
 # endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 
 # define INT8_WIDTH 8
 # define UINT8_WIDTH 8
index 414c49d731c5bcd74ae5cdcd5f23389431f444cb..901926e8930e305178a06ef11952a7d66814db7a 100644 (file)
@@ -210,7 +210,7 @@ extern unsigned long long int strtoull (const char *__restrict __nptr,
 
 /* Versions of the above functions that handle '0b' and '0B' prefixes
    in base 0 or 2.  */
-#if __GLIBC_USE (C2X_STRTOL)
+#if __GLIBC_USE (C23_STRTOL)
 # ifdef __REDIRECT
 extern long int __REDIRECT_NTH (strtol, (const char *__restrict __nptr,
                                         char **__restrict __endptr,
@@ -274,7 +274,7 @@ extern unsigned long long int __isoc23_strtoull (const char *__restrict __nptr,
 #endif
 
 /* Convert a floating-point number to a string.  */
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 extern int strfromd (char *__dest, size_t __size, const char *__format,
                     double __f)
      __THROW __nonnull ((3));
@@ -360,7 +360,7 @@ extern unsigned long long int strtoull_l (const char *__restrict __nptr,
 
 /* Versions of the above functions that handle '0b' and '0B' prefixes
    in base 0 or 2.  */
-# if __GLIBC_USE (C2X_STRTOL)
+# if __GLIBC_USE (C23_STRTOL)
 #  ifdef __REDIRECT
 extern long int __REDIRECT_NTH (strtol_l, (const char *__restrict __nptr,
                                           char **__restrict __endptr,
index 138fdcab83cbb14b716e08574c35c99ad8fd6557..5373f0c025dc47fd36d2aebd22e64e4fe6c12e28 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #include <stdlib.h>
 #include <wchar.h>
 #include <locale/localeinfo.h>
index 66c40358695ee7284f78503285bade4bcf75fb09..ebc5b6f747746713c43134bc13cad9133d65c4be 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 
 #if HAVE_CONFIG_H
 # include <config.h>
index 82852d4eb9d4a217409d4e73824a56c8fa48a8e4..323da6d869d1f718fcd73cc3f5dc971b81265829 100644 (file)
@@ -19,8 +19,8 @@
 #define QUAD   1
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #include <locale.h>
 #include <stdbool.h>
 
index 54e66425e1c59c116fe7f9cfc989a6d65b4766e1..0aeb80ff34b439d1fe79e7fc684eb86c20f8dc22 100644 (file)
@@ -19,8 +19,8 @@
 #define UNSIGNED       1
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #include <locale.h>
 #include <stdbool.h>
 
index 9e4d91c5552b360f89a496a7d890808916d38715..334f2bd505006221b5efde0dde6ed471d9be83c5 100644 (file)
@@ -20,8 +20,8 @@
 #define UNSIGNED       1
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #include <locale.h>
 #include <stdbool.h>
 
index 01274b46be975a730f7c08c0e18c600c6acfbe9c..c7b51d641394777e9e63e88abe6373729591ab70 100644 (file)
@@ -1,4 +1,4 @@
-/* Test strtol functions with C2X binary integers (narrow strings,
+/* Test strtol functions with C23 binary integers (narrow strings,
    no extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -23,7 +23,7 @@
 #define WIDE 0
 #define FNPFX strto
 #define L_(C) C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define TEST_Q 0
 #define TEST_LOCALE 0
 
index 2237f3a227fa10604eb8a69ae944fec8c1eb21e3..5e2b6dd6a0f449c656fc51985d189c4062337f84 100644 (file)
@@ -1,4 +1,4 @@
-/* Test strtol functions with C2X binary integers (narrow strings,
+/* Test strtol functions with C23 binary integers (narrow strings,
    no extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    <https://www.gnu.org/licenses/>.  */
 
 /* Some versions of GCC supported for building glibc do not support
-   -std=c2x.  */
+   -std=c23 or -std=c2x.  */
 #undef _GNU_SOURCE
-#define _ISOC2X_SOURCE
+#define _ISOC23_SOURCE
 
 #define CHAR char
 #define WIDE 0
 #define FNPFX strto
 #define L_(C) C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define TEST_Q 0
 #define TEST_LOCALE 0
 
index 4e1d39bc213a358149eb359388f185fc03077e48..98b63c0ae131874a0df9840ecee328f33484a524 100644 (file)
@@ -1,5 +1,5 @@
-/* Test strtol functions with C2X binary integers (narrow strings, GNU
-   extensions, C2X strtol features disabled).
+/* Test strtol functions with C23 binary integers (narrow strings, GNU
+   extensions, C23 strtol features disabled).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
 #include <features.h>
 /* This file tests the old versions of GNU extension functions, which
    are not normally available to new binaries because GNU extensions
-   normally imply C2X strtol features.  */
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+   normally imply C23 strtol features.  */
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 
 #define CHAR char
 #define WIDE 0
 #define FNPFX strto
 #define L_(C) C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define TEST_Q 1
 #define TEST_LOCALE 1
 
index 97dafe8763d598bc8182e72c4435cc3de51055c9..7732025dab87771858e0b7d72e5c5f80227ba80a 100644 (file)
@@ -1,4 +1,4 @@
-/* Test strtol functions with C2X binary integers (narrow strings, GNU
+/* Test strtol functions with C23 binary integers (narrow strings, GNU
    extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -21,7 +21,7 @@
 #define WIDE 0
 #define FNPFX strto
 #define L_(C) C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define TEST_Q 1
 #define TEST_LOCALE 1
 
index f1ed2fde7e90f5afdd8dbf60abfbc8b308603692..47a208748fcc8bb7ba3d0df80115c0c93dc71448 100644 (file)
@@ -1,4 +1,4 @@
-/* Test strtol functions with C2X binary integers.
+/* Test strtol functions with C23 binary integers.
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -42,7 +42,7 @@
 #define CHECK_RES(ARG, RES, EP, EXPECTED, EXPECTED_EP)                 \
   do                                                                   \
     {                                                                  \
-      if (TEST_C2X)                                                    \
+      if (TEST_C23)                                                    \
        {                                                               \
          TEST_COMPARE ((RES), EXPECTED);                               \
          TEST_VERIFY ((EP) == EXPECTED_EP);                            \
index 10fca472a76d10ce9bf96ddd304f804fc2726be7..d2d5c5f1f91490bcc499d1391f9c9573f642bb99 100644 (file)
@@ -50,7 +50,7 @@ extern void *memmove (void *__dest, const void *__src, size_t __n)
 /* Copy no more than N bytes of SRC to DEST, stopping when C is found.
    Return the position in DEST one byte past where C was copied,
    or NULL if C was not found in the first N bytes of SRC.  */
-#if defined __USE_MISC || defined __USE_XOPEN || __GLIBC_USE (ISOC2X)
+#if defined __USE_MISC || defined __USE_XOPEN || __GLIBC_USE (ISOC23)
 extern void *memccpy (void *__restrict __dest, const void *__restrict __src,
                      int __c, size_t __n)
     __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 4));
@@ -182,7 +182,7 @@ extern size_t strxfrm_l (char *__dest, const char *__src, size_t __n,
 #endif
 
 #if (defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8    \
-     || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X))
+     || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC23))
 /* Duplicate S, returning an identical malloc'd string.  */
 extern char *strdup (const char *__s)
      __THROW __attribute_malloc__ __nonnull ((1));
@@ -191,7 +191,7 @@ extern char *strdup (const char *__s)
 /* Return a malloc'd copy of at most N bytes of STRING.  The
    resultant string is terminated even if no null terminator
    appears before STRING[N].  */
-#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X)
+#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC23)
 extern char *strndup (const char *__string, size_t __n)
      __THROW __attribute_malloc__ __nonnull ((1));
 #endif
index 78e54cd0e6513e623b14a812f6003a4571fea8e6..cefa6608139bfc53b431b5a844572e62206e32cb 100644 (file)
@@ -73,7 +73,7 @@ fenv_t;
 # define FE_NOMASK_ENV  ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index e0a2bde2b143772daae66799a71a3714f249f6e7..b664512140490c7280ae670b0ef89f1a8d314b49 100644 (file)
@@ -132,7 +132,7 @@ typedef unsigned long int fenv_t;
 extern unsigned long int __ieee_get_fp_control (void) __THROW;
 extern void __ieee_set_fp_control (unsigned long int __value) __THROW;
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned long int femode_t;
 
index fed591bf52cde6eee3b91f034ba265a06e83b3d6..320e3abe0d65498993d97b5b3e09d7bbb61adddb 100644 (file)
@@ -81,7 +81,7 @@ fenv_t;
 # define FE_NOMASK_ENV  ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 0c55d29a7be897fec5ef9404821f45fb12b541ab..99c44707325b5d158c8ef5b1c7a14732189d824f 100644 (file)
@@ -102,7 +102,7 @@ typedef struct
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 68a634e4ba775d0198e154fb2375542dab052018..796155f0d065d91b0ca42a46b93bdb605b7c08e4 100644 (file)
@@ -89,7 +89,7 @@ typedef struct
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 34273a5f5841373f336f9d96ea8355ec61635df4..20cb2dbe3546a20f3a73e95777cd03f3fdb39931 100644 (file)
@@ -354,8 +354,9 @@ tests += tst-ibm128-scanf-binary-c11 \
         tst-ieee128-scanf-binary-gnu11 \
         tst-ieee128-scanf-binary-gnu89
 
-# Some versions of GCC supported for building glibc do not support -std=c2x, so
-# the test for that version uses -std=c11 and then _ISOC2X_SOURCE is defined in
+# Some versions of GCC supported for building glibc do not support -std=c23
+# (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
+# the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
 # the test as needed.
 CFLAGS-tst-ibm128-scanf-binary-c11.c += -mabi=ibmlongdouble -Wno-psabi \
                                        -std=c11 -DOBJPFX=\"$(objpfx)\"
@@ -390,8 +391,9 @@ tests += tst-ibm128-wscanf-binary-c11 \
         tst-ieee128-wscanf-binary-gnu11 \
         tst-ieee128-wscanf-binary-gnu89
 
-# Some versions of GCC supported for building glibc do not support -std=c2x, so
-# the test for that version uses -std=c11 and then _ISOC2X_SOURCE is defined in
+# Some versions of GCC supported for building glibc do not support -std=c23
+# (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
+# the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
 # the test as needed.
 CFLAGS-tst-ibm128-wscanf-binary-c11.c += -mabi=ibmlongdouble -Wno-psabi \
                                         -std=c11 -DOBJPFX=\"$(objpfx)\"
index 0ed1cd2cae2d8b4a941dcc954e8b4905e622fec9..f20c267081750f0d0a8f475f4af68a694112a49d 100644 (file)
@@ -236,8 +236,9 @@ tests += tst-nldbl-scanf-binary-c11 \
         tst-nldbl-scanf-binary-gnu11 \
         tst-nldbl-scanf-binary-gnu89
 
-# Some versions of GCC supported for building glibc do not support -std=c2x, so
-# the test for that version uses -std=c11 and then _ISOC2X_SOURCE is defined in
+# Some versions of GCC supported for building glibc do not support -std=c23
+# (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
+# the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
 # the test as needed.
 CFLAGS-tst-nldbl-scanf-binary-c11.c += -mlong-double-64 -std=c11 \
                                       -DOBJPFX=\"$(objpfx)\"
@@ -256,8 +257,9 @@ tests += tst-nldbl-wscanf-binary-c11 \
         tst-nldbl-wscanf-binary-gnu11 \
         tst-nldbl-wscanf-binary-gnu89
 
-# Some versions of GCC supported for building glibc do not support -std=c2x, so
-# the test for that version uses -std=c11 and then _ISOC2X_SOURCE is defined in
+# Some versions of GCC supported for building glibc do not support -std=c23
+# (added in GCC 14), or the older name -std=c2x (added in GCC 9), so
+# the test for that version uses -std=c11 and then _ISOC23_SOURCE is defined in
 # the test as needed.
 CFLAGS-tst-nldbl-wscanf-binary-c11.c += -mlong-double-64 -std=c11 \
                                        -DOBJPFX=\"$(objpfx)\"
index 4d4abefe5db4bfd09ecf93812e2cb0b5e5da3e20..4417c42a190e99b56543aedcac4b63683bd5d2f1 100644 (file)
@@ -81,7 +81,7 @@ typedef struct
 #define FE_NOMASK_ENV ((const fenv_t *) -257)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index e6912c3096023b7c614316d30d823ef96739a4a3..4dad131fb05ed1ef211996fe2fae50f5c9e0f95a 100644 (file)
@@ -122,7 +122,7 @@ fenv_t;
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 50a58f730e23b28d566e20cef7e4de1c3db294ea..b44888e09a8cd7d4dac3af70a00c26eb20eba30a 100644 (file)
@@ -41,7 +41,7 @@ typedef unsigned int fenv_t;
 /* If the default argument is used we use this value.  */
 #define FE_DFL_ENV     ((const fenv_t *) -1l)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 707c11735af45133d2affe41ae551a7f4538861f..9c82239b17acce541830f2dc3e94ac6dc6c44d2d 100644 (file)
@@ -104,7 +104,7 @@ fenv_t;
 # define FE_NOMASK_ENV  ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 6d46e61d6a68d2829d7c06abc906b2819a2e0765..a8ec0cdcdbab7b715e98c1a9c4c4fad8cb0a33fa 100644 (file)
@@ -43,7 +43,7 @@ typedef unsigned int fenv_t;
 /* If the default argument is used we use this value.  */
 #define FE_DFL_ENV     ((const fenv_t *) -1)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 1050d8d6f09c27f5495ae679f95ed48be21d6921..fee7a567e7ab9dfb4f677137c53bfe677f71ae44 100644 (file)
@@ -170,7 +170,7 @@ extern const fenv_t __fe_nonieee_env;
 
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef double femode_t;
 
index c90e8a117d6c515b306be8a7afa7574851e97208..f3a069b2bd5d2e79292d5ff62f747ea9a815373e 100644 (file)
@@ -65,7 +65,7 @@ typedef unsigned int fenv_t;
 /* If the default argument is used we use this value.  */
 #define FE_DFL_ENV     ((__const fenv_t *) -1)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 3573140f858f691a637848a4e6ff904d0edd339c..258828eacc0f9028ab3a1bf426c7e93e8693d411 100644 (file)
@@ -90,7 +90,7 @@ typedef struct
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index 4cc6ac79fd6ed3a0ea53e0c313ab1ce9e06743de..200b6f52a89ef3d4b86cc7496bdffedd47b82e06 100644 (file)
@@ -75,7 +75,7 @@ fenv_t;
 /* If the default argument is used we use this value.  */
 #define FE_DFL_ENV     ((const fenv_t *) -1)
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned int femode_t;
 
index f49950d53e9759f6aff45b468fedb3b45fba67d8..8bee1149730c1ef5e2ad138baf0b0c4af3c160bc 100644 (file)
@@ -83,7 +83,7 @@ typedef unsigned long int fenv_t;
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef unsigned long int femode_t;
 
index 472e751a8872af747f7cd8b70080543d92bf9d28..8b4a95a904357f66127ec55154b92ba9d6bee89a 100644 (file)
@@ -101,7 +101,7 @@ fenv_t;
 # define FE_NOMASK_ENV ((const fenv_t *) -2)
 #endif
 
-#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X)
+#if __GLIBC_USE (IEC_60559_BFP_EXT_C23)
 /* Type representing floating-point control modes.  */
 typedef struct
   {
index 1609aaeffaac571341fd6e3f26506da1fd9a3ef9..b34cf22b4ec65207f3ed913f04b306ec4c02a567 100644 (file)
@@ -148,7 +148,7 @@ extern struct tm *__REDIRECT_NTH (localtime, (const time_t *__timer),
 #endif
 
 
-#if defined __USE_POSIX || __GLIBC_USE (ISOC2X)
+#if defined __USE_POSIX || __GLIBC_USE (ISOC23)
 # ifndef __USE_TIME_BITS64
 /* Return the `struct tm' representation of *TIMER in UTC,
    using *TP to store the result.  */
@@ -173,7 +173,7 @@ extern struct tm*__REDIRECT_NTH (localtime_r, (const time_t *__restrict __t,
 #   define localtime_r __localtime_r
 #  endif
 # endif
-#endif /* POSIX || C2X */
+#endif /* POSIX || C23 */
 
 /* Return a string of the form "Day Mon dd hh:mm:ss yyyy\n"
    that is the representation of TP in this format.  */
@@ -241,7 +241,7 @@ extern long int timezone;
   ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
 
 
-#if defined __USE_MISC || __GLIBC_USE (ISOC2X)
+#if defined __USE_MISC || __GLIBC_USE (ISOC23)
 # ifndef __USE_TIME_BITS64
 /* Like `mktime', but for TP represents Universal Time, not local time.  */
 extern time_t timegm (struct tm *__tp) __THROW;
@@ -394,7 +394,7 @@ extern int __REDIRECT_NTH (timespec_get, (struct timespec *__ts, int __base),
 #endif
 
 
-#if __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (ISOC23)
 # ifndef __USE_TIME_BITS64
 /* Set TS to resolution of time base BASE.  */
 extern int timespec_getres (struct timespec *__ts, int __base)
index 65173e28aabf9f85338d58ba9b6aa949109c2d70..b64a5e1ce5d7d73e7a4ba3cd9c3afe939dc71159 100644 (file)
@@ -285,9 +285,10 @@ CPPFLAGS-wcstold_l.c += -I../stdlib
 $(objpfx)tst-wcstod-nan-locale: $(libm)
 $(objpfx)tst-wcstod-nan-sign: $(libm)
 
-# Some versions of GCC supported for building glibc do not support -std=c2x
-# or -std=gnu2x, so the tests for those versions use -std=c11 and -std=gnu11
-# and then _ISOC2X_SOURCE is defined in the test as needed.
+# Some versions of GCC supported for building glibc do not support -std=c23
+# or -std=gnu23 (added in GCC 14), or the older names -std=c2x or -std=gnu2x
+# (added in GCC 9), so the tests for those versions use -std=c11 and -std=gnu11
+# and then _ISOC23_SOURCE is defined in the test as needed.
 CFLAGS-tst-wcstol-binary-c11.c += -std=c11
 CFLAGS-tst-wcstol-binary-c2x.c += -std=c11
 CFLAGS-tst-wcstol-binary-gnu11.c += -std=gnu11
index 839eab73205a788251835372a325aedffc9b7dea..13de8c5077ce22986af041e307a49a5ad9cd374f 100644 (file)
@@ -29,7 +29,7 @@ __LDBL_REDIR_DECL (vwprintf);
 __LDBL_REDIR_DECL (vswprintf);
 # if !__GLIBC_USE (DEPRECATED_SCANF)
 #  if defined __LDBL_COMPAT
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (fwscanf, __nldbl___isoc23_fwscanf)
 __LDBL_REDIR1_DECL (wscanf, __nldbl___isoc23_wscanf)
 __LDBL_REDIR1_DECL (swscanf, __nldbl___isoc23_swscanf)
@@ -39,7 +39,7 @@ __LDBL_REDIR1_DECL (wscanf, __nldbl___isoc99_wscanf)
 __LDBL_REDIR1_DECL (swscanf, __nldbl___isoc99_swscanf)
 #   endif
 #  elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (fwscanf, __isoc23_fwscanfieee128)
 __LDBL_REDIR1_DECL (wscanf, __isoc23_wscanfieee128)
 __LDBL_REDIR1_DECL (swscanf, __isoc23_swscanfieee128)
@@ -66,7 +66,7 @@ __LDBL_REDIR1_DECL (wcstold, __wcstoieee128)
 # endif
 # if !__GLIBC_USE (DEPRECATED_SCANF)
 #  if defined __LDBL_COMPAT
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (vfwscanf, __nldbl___isoc23_vfwscanf)
 __LDBL_REDIR1_DECL (vwscanf, __nldbl___isoc23_vwscanf)
 __LDBL_REDIR1_DECL (vswscanf, __nldbl___isoc23_vswscanf)
@@ -76,7 +76,7 @@ __LDBL_REDIR1_DECL (vwscanf, __nldbl___isoc99_vwscanf)
 __LDBL_REDIR1_DECL (vswscanf, __nldbl___isoc99_vswscanf)
 #   endif
 #  elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
-#   if __GLIBC_USE (C2X_STRTOL)
+#   if __GLIBC_USE (C23_STRTOL)
 __LDBL_REDIR1_DECL (vfwscanf, __isoc23_vfwscanfieee128)
 __LDBL_REDIR1_DECL (vwscanf, __isoc23_vwscanfieee128)
 __LDBL_REDIR1_DECL (vswscanf, __isoc23_vswscanfieee128)
index 7266a987b052480608295494c712429a0a4de6cb..7916f5177370a37a3e6ab5fbedd43b02e1ae2b42 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wcstol functions with C2X binary integers (wide strings,
+/* Test wcstol functions with C23 binary integers (wide strings,
    no extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -23,7 +23,7 @@
 #define WIDE 1
 #define FNPFX wcsto
 #define L_(C) L ## C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define TEST_Q 0
 #define TEST_LOCALE 0
 
index 258e0885963c8a65f3244cafdc42265cab60cccb..1d7f90f7f05055f53367af510a1d7a7fb6d19521 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wcstol functions with C2X binary integers (wide strings,
+/* Test wcstol functions with C23 binary integers (wide strings,
    no extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    <https://www.gnu.org/licenses/>.  */
 
 /* Some versions of GCC supported for building glibc do not support
-   -std=c2x.  */
+   -std=c23 or -std-c2x.  */
 #undef _GNU_SOURCE
-#define _ISOC2X_SOURCE
+#define _ISOC23_SOURCE
 
 #define CHAR wchar_t
 #define WIDE 1
 #define FNPFX wcsto
 #define L_(C) L ## C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define TEST_Q 0
 #define TEST_LOCALE 0
 
index eb58550125df03a85f6e3e42733e0d53298d52b2..f9d7b61d0686d8ee3d55179638d3598e36f804a9 100644 (file)
@@ -1,5 +1,5 @@
-/* Test wcstol functions with C2X binary integers (wide strings, GNU
-   extensions, C2X wcstol features disabled).
+/* Test wcstol functions with C23 binary integers (wide strings, GNU
+   extensions, C23 wcstol features disabled).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
 #include <features.h>
 /* This file tests the old versions of GNU extension functions, which
    are not normally available to new binaries because GNU extensions
-   normally imply C2X wcstol features.  */
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+   normally imply C23 wcstol features.  */
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 
 #define CHAR wchar_t
 #define WIDE 1
 #define FNPFX wcsto
 #define L_(C) L ## C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define TEST_Q 1
 #define TEST_LOCALE 1
 
index d830f6d0eef1d6632e80e504a35e69d8629bbe4d..7bd7c0dd84d905b7c81739c3d814e48c02ce84bf 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wcstol functions with C2X binary integers (wide strings, GNU
+/* Test wcstol functions with C23 binary integers (wide strings, GNU
    extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -21,7 +21,7 @@
 #define WIDE 1
 #define FNPFX wcsto
 #define L_(C) L ## C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define TEST_Q 1
 #define TEST_LOCALE 1
 
index 521842e0944d4870403653d31c294f94305ebc19..50fb9c0ccd975851dbac056d2e1b2519249c02c0 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wscanf functions with C2X binary integers (wide strings,
+/* Test wscanf functions with C23 binary integers (wide strings,
    no extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -22,7 +22,7 @@
 #define CHAR wchar_t
 #define FNW w
 #define L_(C) L ## C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define STD "c11"
 
 #include "../stdio-common/tst-scanf-binary-main.c"
index 8049ce5f2f71f0257ca0e4637c4c9a3df9e15a93..06d99f235e2b5eb55c49543c07c8176a392dc8a9 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wscanf functions with C2X binary integers (wide strings,
+/* Test wscanf functions with C23 binary integers (wide strings,
    no extensions).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    <https://www.gnu.org/licenses/>.  */
 
 /* Some versions of GCC supported for building glibc do not support
-   -std=c2x.  */
+   -std=c23 or -std=c2x.  */
 #undef _GNU_SOURCE
-#define _ISOC2X_SOURCE
+#define _ISOC23_SOURCE
 
 #define CHAR wchar_t
 #define FNW w
 #define L_(C) L ## C
-#define TEST_C2X 1
-#define STD "c2x"
+#define TEST_C23 1
+#define STD "c23"
 
 #include "../stdio-common/tst-scanf-binary-main.c"
index 0aec47ad5f7713ef11be43342f2dc758aa6505c4..819ad894200ff601941417a15d98571dac501a75 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wscanf functions with C2X binary integers (wide strings,
+/* Test wscanf functions with C23 binary integers (wide strings,
    GNU extensions to C11).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -20,7 +20,7 @@
 #define CHAR wchar_t
 #define FNW w
 #define L_(C) L ## C
-#define TEST_C2X 1
+#define TEST_C23 1
 #define STD "gnu11"
 
 #include "../stdio-common/tst-scanf-binary-main.c"
index bdf858c8f5594accca2ab704ffe77512c0c49b8b..2f3c38d7d06a56842d53b10e4c1d824b3c381861 100644 (file)
@@ -1,4 +1,4 @@
-/* Test wscanf functions with C2X binary integers (wide strings,
+/* Test wscanf functions with C23 binary integers (wide strings,
    GNU extensions to C89).
    Copyright (C) 2022-2024 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
@@ -20,7 +20,7 @@
 #define CHAR wchar_t
 #define FNW w
 #define L_(C) L ## C
-#define TEST_C2X 0
+#define TEST_C23 0
 #define STD "gnu89"
 
 #include "../stdio-common/tst-scanf-binary-main.c"
index 442b1ca93258442f65deadcb6b1262257014d24c..7123f46500ef2162f214208007a9af50f5cd6d5d 100644 (file)
@@ -31,9 +31,9 @@
 #include <bits/types.h>
 #include <bits/types/mbstate_t.h>
 
-/* Declare the C2x char8_t typedef in C2x modes, but only if the C++
+/* Declare the C23 char8_t typedef in C23 modes, but only if the C++
   __cpp_char8_t feature test macro is not defined.  */
-#if __GLIBC_USE (ISOC2X) && !defined __cpp_char8_t
+#if __GLIBC_USE (ISOC23) && !defined __cpp_char8_t
 #if __GNUC_PREREQ (10, 0) && defined __cplusplus
 /* Suppress the diagnostic regarding char8_t being a keyword in C++20.  */
 # pragma GCC diagnostic push
@@ -55,9 +55,9 @@ typedef __uint_least32_t char32_t;
 
 __BEGIN_DECLS
 
-/* Declare the C2x mbrtoc8() and c8rtomb() functions in C2x modes or if
+/* Declare the C23 mbrtoc8() and c8rtomb() functions in C23 modes or if
    the C++ __cpp_char8_t feature test macro is defined.  */
-#if __GLIBC_USE (ISOC2X) || defined __cpp_char8_t
+#if __GLIBC_USE (ISOC23) || defined __cpp_char8_t
 /* Write char8_t representation of multibyte character pointed
    to by S to PC8.  */
 extern size_t mbrtoc8  (char8_t *__restrict __pc8,
index e52fb185672167cb7643ce407c785ae54382dae9..554d811a221ea989a8031128f308bf25a6301816 100644 (file)
@@ -410,7 +410,7 @@ extern long double wcstold (const wchar_t *__restrict __nptr,
                            wchar_t **__restrict __endptr) __THROW;
 #endif /* C99 */
 
-#if __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X)
+#if __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC23)
 /* Likewise for `_FloatN' and `_FloatNx' when support is enabled.  */
 
 # if __HAVE_FLOAT16
@@ -447,7 +447,7 @@ extern _Float64x wcstof64x (const wchar_t *__restrict __nptr,
 extern _Float128x wcstof128x (const wchar_t *__restrict __nptr,
                              wchar_t **__restrict __endptr) __THROW;
 # endif
-#endif /* __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X) */
+#endif /* __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC23) */
 
 
 /* Convert initial portion of wide string NPTR to `long int'
@@ -495,7 +495,7 @@ extern unsigned long long int wcstouq (const wchar_t *__restrict __nptr,
 
 /* Versions of the above functions that handle '0b' and '0B' prefixes
    in base 0 or 2.  */
-#if __GLIBC_USE (C2X_STRTOL)
+#if __GLIBC_USE (C23_STRTOL)
 # ifdef __REDIRECT
 extern long int __REDIRECT_NTH (wcstol, (const wchar_t *__restrict __nptr,
                                         wchar_t **__restrict __endptr,
@@ -579,7 +579,7 @@ extern unsigned long long int wcstoull_l (const wchar_t *__restrict __nptr,
 
 /* Versions of the above functions that handle '0b' and '0B' prefixes
    in base 0 or 2.  */
-# if __GLIBC_USE (C2X_STRTOL)
+# if __GLIBC_USE (C23_STRTOL)
 #  ifdef __REDIRECT
 extern long int __REDIRECT_NTH (wcstol_l, (const wchar_t *__restrict __nptr,
                                           wchar_t **__restrict __endptr,
@@ -790,7 +790,7 @@ extern int swscanf (const wchar_t *__restrict __s,
    bits/wchar-ldbl.h.  */
 # if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \
      && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0
-#  if __GLIBC_USE (C2X_STRTOL)
+#  if __GLIBC_USE (C23_STRTOL)
 #   ifdef __REDIRECT
 extern int __REDIRECT (fwscanf, (__FILE *__restrict __stream,
                                 const wchar_t *__restrict __format, ...),
@@ -870,7 +870,7 @@ extern int vswscanf (const wchar_t *__restrict __s,
      && (!defined __LDBL_COMPAT || !defined __REDIRECT) \
      && (defined __STRICT_ANSI__ || defined __USE_XOPEN2K) \
      && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0
-#  if __GLIBC_USE (C2X_STRTOL)
+#  if __GLIBC_USE (C23_STRTOL)
 #   ifdef __REDIRECT
 extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s,
                                  const wchar_t *__restrict __format,
index dcea69ae8ba15316ba02ab7d5415136427cdf6bd..ebbef5d7a1e9055d1d9d5434f8771ed6a81054c5 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #define __need_wchar_t
 #include <stddef.h>
 #include <locale.h>
index bc8d22638bf7e2f0a54b71aebc6e9af1bb280305..96c65d05c54d3f46a2a98b7267f918d7fbca223f 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #define __need_wchar_t
 #include <stddef.h>
 #include <locale.h>
index 0642dab6526effa85c0d8e32983c83d42aa690ef..ea332bf016cf4f6ea8b33795da4f4580bf8503c2 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #define __need_wchar_t
 #include <stddef.h>
 #include <locale.h>
index 1694705bbddae7a6e883fb3b010c4211d59e9d61..04b27e84820a9a8db4217a97aadab791a83e1507 100644 (file)
@@ -17,8 +17,8 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <features.h>
-#undef __GLIBC_USE_C2X_STRTOL
-#define __GLIBC_USE_C2X_STRTOL 0
+#undef __GLIBC_USE_C23_STRTOL
+#define __GLIBC_USE_C23_STRTOL 0
 #define __need_wchar_t
 #include <stddef.h>
 #include <locale.h>