From: Collin Funk Date: Sat, 5 Apr 2025 03:48:25 +0000 (-0700) Subject: conform: Add initial support for C23. X-Git-Tag: glibc-2.42~316 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d18213c6997a058a68bc2547dcb43cf77bc4504f;p=thirdparty%2Fglibc.git conform: Add initial support for C23. Hi Joseph, As we discussed, this patch just makes C23 include every check that is performed by C11. I tested the commit by adding the ISO23 Make and Python variables to be the same as ISO11. So the only difference was compiling with -DISO23 instead of -DISO11. And changed the temporary directories to instead use the format f'/tmp/glibc-{self.standard}-{self.header}'. Then I used a shell script to run 'cmp' on each file in the ISO11 and ISO23 directories for each header to make sure they were the same. -- 8< -- Make C23 checks include every test that is performed by C11. Done by running the following command: find conform -name '*.h-data' | xargs sed -i \ -e 's| !defined ISO11| !defined ISO11 \&\& !defined ISO23|g' \ -e 's| defined ISO11| defined ISO11 \|\| defined ISO23|g' \ -e 's|ifdef ISO11|if defined ISO11 \|\| defined ISO23|g' \ -e 's|ifndef ISO11|if !defined ISO11 \&\& !defined ISO23|g' Signed-off-by: Collin Funk --- diff --git a/conform/data/aio.h-data b/conform/data/aio.h-data index adb291b6e15..7801faa0c62 100644 --- a/conform/data/aio.h-data +++ b/conform/data/aio.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42 type {struct aiocb} // Test elements of the AIO control struct. diff --git a/conform/data/arpa/inet.h-data b/conform/data/arpa/inet.h-data index 040b8212c73..c5146901416 100644 --- a/conform/data/arpa/inet.h-data +++ b/conform/data/arpa/inet.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 // in_port_t should have exactly 16 bits type in_port_t // in_addr_t should have exactly 32 bits diff --git a/conform/data/assert.h-data b/conform/data/assert.h-data index acdfef99e12..2344ee32370 100644 --- a/conform/data/assert.h-data +++ b/conform/data/assert.h-data @@ -1,9 +1,9 @@ macro assert -#ifdef ISO11 +#if defined ISO11 || defined ISO23 macro static_assert #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/complex.h-data b/conform/data/complex.h-data index 4af7757bd73..0c267e47a3e 100644 --- a/conform/data/complex.h-data +++ b/conform/data/complex.h-data @@ -74,7 +74,7 @@ function {long double complex} csqrtl (long double complex) function {long double complex} ctanhl (long double complex) function {long double complex} ctanl (long double complex) -# if defined ISO11 +# if defined ISO11 || defined ISO23 macro-function {double complex} CMPLX (double, double) macro-function {float complex} CMPLXF (float, float) macro-function {long double complex} CMPLXL (long double, long double) diff --git a/conform/data/cpio.h-data b/conform/data/cpio.h-data index ac7d40fd5e8..ab91f2c07f4 100644 --- a/conform/data/cpio.h-data +++ b/conform/data/cpio.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX constant C_IRUSR == 0000400 constant C_IWUSR == 0000200 constant C_IXUSR == 0000100 diff --git a/conform/data/ctype.h-data b/conform/data/ctype.h-data index 7e10794e462..84426f99fa7 100644 --- a/conform/data/ctype.h-data +++ b/conform/data/ctype.h-data @@ -16,7 +16,7 @@ function int toupper (int) function int isblank (int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function int isascii (int) function int toascii (int) @@ -46,6 +46,6 @@ function int toupper_l (int, locale_t) allow is[abcdefghijklmnopqrstuvwxyz]* allow to[abcdefghijklmnopqrstuvwxyz]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/dirent.h-data b/conform/data/dirent.h-data index be7ad06fd82..e7acdebc7be 100644 --- a/conform/data/dirent.h-data +++ b/conform/data/dirent.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type DIR type {struct dirent} diff --git a/conform/data/dlfcn.h-data b/conform/data/dlfcn.h-data index b6658ae8ca2..e85288933c5 100644 --- a/conform/data/dlfcn.h-data +++ b/conform/data/dlfcn.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 macro RTLD_LAZY macro RTLD_NOW macro RTLD_GLOBAL diff --git a/conform/data/errno.h-data b/conform/data/errno.h-data index 12730ba9742..c7b5f7fdba2 100644 --- a/conform/data/errno.h-data +++ b/conform/data/errno.h-data @@ -7,7 +7,7 @@ macro-int-constant ERANGE {int} > 0 // variable int errno allow errno -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 macro-int-constant E2BIG {int} > 0 macro-int-constant EACCES {int} > 0 # if !defined POSIX diff --git a/conform/data/fcntl.h-data b/conform/data/fcntl.h-data index ffa4a351fb4..8491ca671dc 100644 --- a/conform/data/fcntl.h-data +++ b/conform/data/fcntl.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 constant F_DUPFD constant F_GETFD constant F_SETFD diff --git a/conform/data/fenv.h-data b/conform/data/fenv.h-data index 280b72864c6..b3f674cc090 100644 --- a/conform/data/fenv.h-data +++ b/conform/data/fenv.h-data @@ -30,7 +30,7 @@ function int feholdexcept (fenv_t*) function int fesetenv (const fenv_t*) function int feupdateenv (const fenv_t *) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #endif diff --git a/conform/data/float.h-data b/conform/data/float.h-data index 7b98fc03447..54784246d28 100644 --- a/conform/data/float.h-data +++ b/conform/data/float.h-data @@ -43,7 +43,7 @@ macro-int-constant DECIMAL_DIG >= 10 macro-int-constant FLT_EVAL_METHOD #endif -#if defined ISO11 +#if defined ISO11 || defined ISO23 macro-int-constant DBL_HAS_SUBNORM macro-int-constant FLT_HAS_SUBNORM macro-int-constant LDBL_HAS_SUBNORM @@ -57,6 +57,6 @@ macro-constant FLT_TRUE_MIN <= 1E-37 macro-constant LDBL_TRUE_MIN <= 1E-37 #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/fmtmsg.h-data b/conform/data/fmtmsg.h-data index c1b18ad4a4d..16d000365f3 100644 --- a/conform/data/fmtmsg.h-data +++ b/conform/data/fmtmsg.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 macro MM_HARD constant MM_HARD diff --git a/conform/data/fnmatch.h-data b/conform/data/fnmatch.h-data index 12a9a4ac2e1..e63a46936da 100644 --- a/conform/data/fnmatch.h-data +++ b/conform/data/fnmatch.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 constant FNM_NOMATCH constant FNM_PATHNAME constant FNM_PERIOD diff --git a/conform/data/ftw.h-data b/conform/data/ftw.h-data index 340334bfd4e..5c8568fd60f 100644 --- a/conform/data/ftw.h-data +++ b/conform/data/ftw.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 # ifndef XPG4 type {struct FTW} element {struct FTW} int base diff --git a/conform/data/glob.h-data b/conform/data/glob.h-data index eca83937af8..3b5a99927de 100644 --- a/conform/data/glob.h-data +++ b/conform/data/glob.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define size_t __size_t #endif diff --git a/conform/data/grp.h-data b/conform/data/grp.h-data index 16884445867..428329bbea3 100644 --- a/conform/data/grp.h-data +++ b/conform/data/grp.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define gid_t __gid_t #endif diff --git a/conform/data/iconv.h-data b/conform/data/iconv.h-data index 79fb2d6def9..8700fc61b2a 100644 --- a/conform/data/iconv.h-data +++ b/conform/data/iconv.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX type iconv_t # if defined XOPEN2K8 || defined POSIX2008 type size_t diff --git a/conform/data/iso646.h-data b/conform/data/iso646.h-data index 9e307f734d0..713c3a48275 100644 --- a/conform/data/iso646.h-data +++ b/conform/data/iso646.h-data @@ -11,7 +11,7 @@ macro or_eq macro xor macro xor_eq -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #endif diff --git a/conform/data/langinfo.h-data b/conform/data/langinfo.h-data index 6bbb3872a05..4bd90f2e954 100644 --- a/conform/data/langinfo.h-data +++ b/conform/data/langinfo.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX constant CODESET constant D_T_FMT constant D_FMT diff --git a/conform/data/libgen.h-data b/conform/data/libgen.h-data index e9eb5fafc91..aee71bb160c 100644 --- a/conform/data/libgen.h-data +++ b/conform/data/libgen.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 function {char*} basename (char*) function {char*} dirname (char*) diff --git a/conform/data/limits.h-data b/conform/data/limits.h-data index 23114a5fa07..4160f961cd2 100644 --- a/conform/data/limits.h-data +++ b/conform/data/limits.h-data @@ -20,13 +20,13 @@ macro-int-constant UINT_MAX {unsigned int} >= 4294967295U macro-int-constant LONG_MAX {long int} >= 2147483647L macro-int-constant LONG_MIN {long int} <= -2147483647L macro-int-constant ULONG_MAX {unsigned long int} >= 4294967295UL -#if defined ISO99 || defined ISO11 || defined XOPEN2K8 || defined POSIX2008 +#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K8 || defined POSIX2008 macro-int-constant LLONG_MIN {long long int} <= -9223372036854775807ll macro-int-constant LLONG_MAX {long long int} >= 9223372036854775807ll macro-int-constant ULLONG_MAX {unsigned long long int} >= 18446744073709551615ull #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 // if these values exist, we should check the minimal value allow AIO_LISTIO_MAX allow AIO_MAX diff --git a/conform/data/locale.h-data b/conform/data/locale.h-data index 266264ac6dc..df28e44a0da 100644 --- a/conform/data/locale.h-data +++ b/conform/data/locale.h-data @@ -31,7 +31,7 @@ macro-constant NULL == 0 macro-int-constant LC_ALL macro-int-constant LC_COLLATE macro-int-constant LC_CTYPE -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 macro-int-constant LC_MESSAGES #endif macro-int-constant LC_MONETARY @@ -62,7 +62,7 @@ function locale_t uselocale (locale_t) #endif allow LC_[ABCDEFGHIJKLMNOPQRSTUVWXYZ]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #if defined XOPEN2K8 || defined POSIX2008 diff --git a/conform/data/math.h-data b/conform/data/math.h-data index 0c507557925..d177e9bdf8d 100644 --- a/conform/data/math.h-data +++ b/conform/data/math.h-data @@ -21,7 +21,7 @@ type double_t function int isnan (double) # endif -# if !defined ISO99 && !defined ISO11 && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008 constant M_E constant M_LOG2E constant M_LOG10E @@ -104,7 +104,7 @@ function double gamma (double) #endif #if !defined ISO && !defined POSIX function double hypot (double, double) -# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function double j0 (double) function double j1 (double) function double jn (int, double) @@ -113,7 +113,7 @@ function double lgamma (double) # if !defined XPG4 && !defined XPG42 && !defined UNIX98 function double tgamma (double) # endif -# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function double y0 (double) function double y1 (double) function double yn (int, double) @@ -157,7 +157,7 @@ function double nan (const char*) # endif # endif -# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 // variable signgam allow signgam # endif @@ -327,7 +327,7 @@ allow tanl allow tanhl #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 diff --git a/conform/data/monetary.h-data b/conform/data/monetary.h-data index 4f0cb9b681a..7a87041764c 100644 --- a/conform/data/monetary.h-data +++ b/conform/data/monetary.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX type size_t type ssize_t # if defined XOPEN2K8 || defined POSIX2008 diff --git a/conform/data/mqueue.h-data b/conform/data/mqueue.h-data index 42ccd8551eb..6b5c15d5969 100644 --- a/conform/data/mqueue.h-data +++ b/conform/data/mqueue.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42 // should test for not an array type. type mqd_t diff --git a/conform/data/ndbm.h-data b/conform/data/ndbm.h-data index 2ee7a592531..1aa4423ecab 100644 --- a/conform/data/ndbm.h-data +++ b/conform/data/ndbm.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 type datum element datum {void*} dptr element datum size_t dsize diff --git a/conform/data/net/if.h-data b/conform/data/net/if.h-data index 8a4d89c0679..98e1bd796a0 100644 --- a/conform/data/net/if.h-data +++ b/conform/data/net/if.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 type {struct if_nameindex} element {struct if_nameindex} {unsigned int} if_index diff --git a/conform/data/netdb.h-data b/conform/data/netdb.h-data index c6d8b70a0de..a6484ac9843 100644 --- a/conform/data/netdb.h-data +++ b/conform/data/netdb.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 optional-type in_port_t optional-type in_addr_t diff --git a/conform/data/netinet/in.h-data b/conform/data/netinet/in.h-data index ccc74db6087..ad1d0b3e1e8 100644 --- a/conform/data/netinet/in.h-data +++ b/conform/data/netinet/in.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 type in_port_t type in_addr_t diff --git a/conform/data/nl_types.h-data b/conform/data/nl_types.h-data index 67a0d7a198d..90ba794b82b 100644 --- a/conform/data/nl_types.h-data +++ b/conform/data/nl_types.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX type nl_catd type nl_item diff --git a/conform/data/poll.h-data b/conform/data/poll.h-data index f7ebb917154..d99c7762f4b 100644 --- a/conform/data/poll.h-data +++ b/conform/data/poll.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 type {struct pollfd} element {struct pollfd} int fd element {struct pollfd} {short int} events diff --git a/conform/data/pthread.h-data b/conform/data/pthread.h-data index 6b104994586..09bf5275157 100644 --- a/conform/data/pthread.h-data +++ b/conform/data/pthread.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42 constant PTHREAD_CANCEL_ASYNCHRONOUS constant PTHREAD_CANCEL_ENABLE constant PTHREAD_CANCEL_DEFERRED diff --git a/conform/data/pwd.h-data b/conform/data/pwd.h-data index e86433d6a7c..b2f8cbf924e 100644 --- a/conform/data/pwd.h-data +++ b/conform/data/pwd.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define uid_t __uid_t # define gid_t __gid_t diff --git a/conform/data/regex.h-data b/conform/data/regex.h-data index 04f9034f81d..602f2093b6a 100644 --- a/conform/data/regex.h-data +++ b/conform/data/regex.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type regex_t element regex_t size_t re_nsub diff --git a/conform/data/sched.h-data b/conform/data/sched.h-data index 63e5eb25672..639f129855a 100644 --- a/conform/data/sched.h-data +++ b/conform/data/sched.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42 # if defined POSIX || defined UNIX98 # include "time.h-data" # else diff --git a/conform/data/search.h-data b/conform/data/search.h-data index e99f7e6c1d6..240be297fcb 100644 --- a/conform/data/search.h-data +++ b/conform/data/search.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 type ENTRY type {struct entry} element {struct entry} {char*} key diff --git a/conform/data/semaphore.h-data b/conform/data/semaphore.h-data index 066c2f721b4..18afd1689a8 100644 --- a/conform/data/semaphore.h-data +++ b/conform/data/semaphore.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined XPG42 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined XPG42 type sem_t constant SEM_FAILED diff --git a/conform/data/setjmp.h-data b/conform/data/setjmp.h-data index af28ddb59ad..37bd9bd7d77 100644 --- a/conform/data/setjmp.h-data +++ b/conform/data/setjmp.h-data @@ -1,10 +1,10 @@ type jmp_buf -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type sigjmp_buf #endif function void longjmp (jmp_buf, int) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function void siglongjmp (sigjmp_buf, int) # if !defined POSIX && !defined POSIX2008 function void _longjmp (jmp_buf, int) @@ -12,13 +12,13 @@ function void _longjmp (jmp_buf, int) #endif macro-function int setjmp (jmp_buf) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 macro-function int sigsetjmp (sigjmp_buf, int) # if !defined POSIX && !defined POSIX2008 macro-function int _setjmp (jmp_buf) # endif #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data index 3b00b760766..4beb3d8515f 100644 --- a/conform/data/signal.h-data +++ b/conform/data/signal.h-data @@ -1,15 +1,15 @@ macro-constant SIG_DFL {void(*)(int)} macro-constant SIG_ERR {void(*)(int)} -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 macro-constant SIG_HOLD {void(*)(int)} #endif macro-constant SIG_IGN {void(*)(int)} type sig_atomic_t -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type sigset_t #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX type pid_t #elif defined POSIX # define pid_t __pid_t @@ -68,7 +68,7 @@ macro-int-constant SIGTERM {int} > 0 function void (*signal (int, void(*)(int)))(int) function int raise (int) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 macro-int-constant SIGALRM {int} > 0 macro-int-constant SIGHUP {int} > 0 macro-int-constant SIGKILL {int} > 0 diff --git a/conform/data/spawn.h-data b/conform/data/spawn.h-data index be69922669f..47b709bf528 100644 --- a/conform/data/spawn.h-data +++ b/conform/data/spawn.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 type posix_spawnattr_t type posix_spawn_file_actions_t # if defined XOPEN2K8 || defined POSIX2008 diff --git a/conform/data/stdalign.h-data b/conform/data/stdalign.h-data index edc2310e98f..62eb704f930 100644 --- a/conform/data/stdalign.h-data +++ b/conform/data/stdalign.h-data @@ -1,4 +1,4 @@ -#if defined ISO11 +#if defined ISO11 || defined ISO23 macro alignas macro alignof macro-int-constant __alignas_is_defined {int} == 1 diff --git a/conform/data/stdarg.h-data b/conform/data/stdarg.h-data index 53addb91fa9..c753745b316 100644 --- a/conform/data/stdarg.h-data +++ b/conform/data/stdarg.h-data @@ -5,10 +5,10 @@ macro va_start macro va_arg macro va_end -#if defined ISO99 || defined ISO11 || defined XOPEN2K || defined POSIX2008 || defined XOPEN2K8 +#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K || defined POSIX2008 || defined XOPEN2K8 macro va_copy #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/stdbool.h-data b/conform/data/stdbool.h-data index a030e9cffeb..2a5a08fc603 100644 --- a/conform/data/stdbool.h-data +++ b/conform/data/stdbool.h-data @@ -4,7 +4,7 @@ macro-int-constant true {int} == 1 macro-int-constant false {int} == 0 macro-int-constant __bool_true_false_are_defined {int} == 1 -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #endif diff --git a/conform/data/stddef.h-data b/conform/data/stddef.h-data index 9ded4f1ca0f..c7a80a83d71 100644 --- a/conform/data/stddef.h-data +++ b/conform/data/stddef.h-data @@ -6,10 +6,10 @@ type ptrdiff_t type wchar_t type size_t -#if defined ISO11 +#if defined ISO11 || defined ISO23 type max_align_t #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/stdio.h-data b/conform/data/stdio.h-data index 3ef24606610..1be80b47b0d 100644 --- a/conform/data/stdio.h-data +++ b/conform/data/stdio.h-data @@ -6,7 +6,7 @@ macro-int-constant _IOFBF macro-int-constant _IOLBF macro-int-constant _IONBF -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 constant L_ctermid # if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008 # ifdef POSIX @@ -28,7 +28,7 @@ macro-int-constant EOF < 0 macro-constant NULL == 0 -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 constant P_tmpdir #endif @@ -38,7 +38,7 @@ macro stderr {FILE *} type FILE type fpos_t -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX type va_list #else #define va_list __gnuc_va_list @@ -50,7 +50,7 @@ type ssize_t #endif function void clearerr (FILE*) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function {char*} ctermid (char*) # if defined XPG4 || defined XPG42 || defined UNIX98 function {char*} cuserid (char*) @@ -60,7 +60,7 @@ function {char*} cuserid (char*) function int dprintf (int, const char*, ...) #endif function int fclose (FILE*) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function {FILE*} fdopen (int, const char*) #endif function int feof (FILE*) @@ -69,7 +69,7 @@ function int fflush (FILE*) function int fgetc (FILE*) function int fgetpos (FILE*, fpos_t*) function {char*} fgets (char*, int, FILE*) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function int fileno (FILE*) #endif #if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008 @@ -112,7 +112,7 @@ function ssize_t getline (char**, size_t*, FILE*) #if defined XPG4 || defined XPG42 || defined UNIX98 function int getopt (int, char *const[], const char *) #endif -#if !defined ISO11 +#if !defined ISO11 && !defined ISO23 function {char*} gets (char*) #endif #if defined XPG4 || defined XPG42 || defined UNIX98 @@ -121,11 +121,11 @@ function int getw (FILE*) #if defined XOPEN2K8 || defined POSIX2008 function {FILE*} open_memstream (char**, size_t*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function int pclose (FILE*) #endif function void perror (const char*) -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 function {FILE*} popen (const char*, const char*) #endif function int printf (const char*, ...) @@ -178,7 +178,7 @@ function int vsprintf (char*, const char*, va_list) function int vsscanf (const char*, const char*, va_list) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #if !defined POSIX && !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008 variable {char*} optarg variable int opterr diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data index 6913828196f..0f6da091664 100644 --- a/conform/data/stdlib.h-data +++ b/conform/data/stdlib.h-data @@ -12,7 +12,7 @@ macro-constant NULL == 0 macro-int-constant RAND_MAX >= 32767 macro MB_CUR_MAX -#if defined ISO99 || defined ISO11 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008 +#if defined ISO99 || defined ISO11 || defined ISO23 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008 type lldiv_t element lldiv_t {long long} quot element lldiv_t {long long} rem @@ -20,7 +20,7 @@ element lldiv_t {long long} rem type size_t type wchar_t -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX constant WNOHANG constant WUNTRACED @@ -35,16 +35,16 @@ macro WTERMSIG #if !defined ISO && !defined XPG4 && !defined XPG42 && !defined UNIX98 && !defined POSIX function void _Exit (int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function long a64l (const char*) #endif function void abort (void) function int abs (int) -#if defined ISO11 +#if defined ISO11 || defined ISO23 function {void *} aligned_alloc (size_t, size_t) #endif function int atexit (void(*)(void)) -#if defined ISO11 +#if defined ISO11 || defined ISO23 function int at_quick_exit (void (*) (void)) #endif function double atof (const char*) @@ -56,13 +56,13 @@ function {long long} atoll (const char*) function {void*} bsearch (const void*, const void*, size_t, size_t, int(*)(const void*, const void*)) function {void*} calloc (size_t, size_t) function div_t div (int, int) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function double drand48 (void) #endif #if defined XPG42 || defined UNIX98 || defined XOPEN2K function {char*} ecvt (double, int, int*, int*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function double erand48 (unsigned short int[3]) #endif function void exit (int) @@ -74,21 +74,21 @@ function void free (void*) function {char*} gcvt (double, int, char*) #endif function {char*} getenv (const char*) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX function int getsubopt (char**, char *const*, char**) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function int grantpt (int) function {char*} initstate (unsigned int, char*, size_t) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function {long int} jrand48 (unsigned short int[3]) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function {char*} l64a (long) #endif function {long int} labs (long int) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function void lcong48 (unsigned short int[7]) #endif function ldiv_t ldiv (long int, long int) @@ -96,7 +96,7 @@ function ldiv_t ldiv (long int, long int) function {long long} llabs (long long) function lldiv_t lldiv (long long, long long) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function {long int} lrand48 (void) #endif function {void*} malloc (size_t) @@ -106,13 +106,13 @@ function int mbtowc (wchar_t*, const char*, size_t) #if defined XOPEN2K8 || defined POSIX2008 function {char*} mkdtemp (char*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined XOPEN2K8 && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined XOPEN2K8 && !defined POSIX2008 function {char*} mktemp (char*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX function int mkstemp (char*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function {long int} mrand48 (void) function {long int} nrand48 (unsigned short int[3]) #endif @@ -122,41 +122,41 @@ function int posix_memalign (void**, size_t, size_t) #if defined XOPEN2K || defined XOPEN2K8 function int posix_openpt (int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function {char*} ptsname (int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function int putenv (char*) #endif function void qsort (void*, size_t, size_t, int(*)(const void*, const void*)) -#if defined ISO11 +#if defined ISO11 || defined ISO23 function void quick_exit (int) #endif function int rand (void) #if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008 function int rand_r (unsigned int*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function long random (void) #endif function {void*} realloc (void*, size_t) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function {char*} realpath (const char*, char*) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function {unsigned short int*} seed48 (unsigned short int[3]) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 function int setenv (const char*, const char*, int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function {char*} setstate (char*) #endif function void srand (unsigned int) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function void srand48 (long int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function void srandom (unsigned) #endif function double strtod (const char*, char**) @@ -174,10 +174,10 @@ function int system (const char*) #if defined XPG42 || defined UNIX98 function int ttyslot (void) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function int unlockpt (int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 function int unsetenv (const char*) #endif #if defined XPG42 || defined UNIX98 @@ -186,7 +186,7 @@ function {void*} valloc (size_t) function size_t wcstombs (char*, const wchar_t*, size_t) function int wctomb (char*, wchar_t) -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX allow-header stddef.h allow-header limits.h allow-header math.h @@ -194,6 +194,6 @@ allow-header sys/wait.h #endif allow str[abcdefghijklmnopqrstuvwxyz]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/stdnoreturn.h-data b/conform/data/stdnoreturn.h-data index 77b9a589d84..fa83c4f5589 100644 --- a/conform/data/stdnoreturn.h-data +++ b/conform/data/stdnoreturn.h-data @@ -1,3 +1,3 @@ -#if defined ISO11 +#if defined ISO11 || defined ISO23 macro noreturn #endif diff --git a/conform/data/string.h-data b/conform/data/string.h-data index e06f9414987..8cda133428b 100644 --- a/conform/data/string.h-data +++ b/conform/data/string.h-data @@ -5,7 +5,7 @@ type size_t type locale_t #endif -#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function {void*} memccpy (void*, const void*, int, size_t) #endif function {void*} memchr (const void*, int, size_t) @@ -27,7 +27,7 @@ function int strcoll_l (const char*, const char*, locale_t) #endif function {char*} strcpy (char*, const char*) function size_t strcspn (const char*, const char*) -#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 & !defined ISO11 && !defined ISO23 && !defined XPG4 && !defined POSIX && !defined POSIX2008 function {char*} strdup (const char*) #endif function {char*} strerror (int) @@ -61,13 +61,13 @@ function size_t strxfrm (char*, const char*, size_t) function size_t strxfrm_l (char*, const char*, size_t, locale_t) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX allow-header stddef.h #endif allow str[abcdefghijklmnopqrstuvwxyz]* allow mem[abcdefghijklmnopqrstuvwxyz]* allow wcs[abcdefghijklmnopqrstuvwxyz]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif diff --git a/conform/data/strings.h-data b/conform/data/strings.h-data index 13827ebed9a..b5d352ff322 100644 --- a/conform/data/strings.h-data +++ b/conform/data/strings.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 # if !defined XOPEN2K8 && !defined POSIX2008 function int bcmp (const void*, const void*, size_t) function void bcopy (const void*, void*, size_t) diff --git a/conform/data/sys/ipc.h-data b/conform/data/sys/ipc.h-data index 1364b07e87e..e157257e8a0 100644 --- a/conform/data/sys/ipc.h-data +++ b/conform/data/sys/ipc.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 type {struct ipc_perm} // Bug 23082: uid/gid/cuid/cgid/mode have type unsigned short instead of uid_t and mode_t. diff --git a/conform/data/sys/mman.h-data b/conform/data/sys/mman.h-data index a74388338e2..b742b900d68 100644 --- a/conform/data/sys/mman.h-data +++ b/conform/data/sys/mman.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined XPG4 constant PROT_READ constant PROT_WRITE constant PROT_EXEC diff --git a/conform/data/sys/msg.h-data b/conform/data/sys/msg.h-data index f5e9f1c82a3..93df6fd656a 100644 --- a/conform/data/sys/msg.h-data +++ b/conform/data/sys/msg.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 type {struct msqid_ds} type msgqnum_t diff --git a/conform/data/sys/resource.h-data b/conform/data/sys/resource.h-data index cedbee1a400..ba247e3d264 100644 --- a/conform/data/sys/resource.h-data +++ b/conform/data/sys/resource.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 constant PRIO_PROCESS constant PRIO_PGRP constant PRIO_USER diff --git a/conform/data/sys/select.h-data b/conform/data/sys/select.h-data index 44d63ebd2d6..9406eaea0c3 100644 --- a/conform/data/sys/select.h-data +++ b/conform/data/sys/select.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98 type time_t type suseconds_t diff --git a/conform/data/sys/sem.h-data b/conform/data/sys/sem.h-data index a36ab1bd919..f34541c4478 100644 --- a/conform/data/sys/sem.h-data +++ b/conform/data/sys/sem.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 constant SEM_UNDO constant GETNCNT diff --git a/conform/data/sys/shm.h-data b/conform/data/sys/shm.h-data index 778b194f50d..a9d2539e478 100644 --- a/conform/data/sys/shm.h-data +++ b/conform/data/sys/shm.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 constant SHM_RDONLY symbol SHMLBA constant SHM_RND diff --git a/conform/data/sys/socket.h-data b/conform/data/sys/socket.h-data index 8796c575709..d00504bd313 100644 --- a/conform/data/sys/socket.h-data +++ b/conform/data/sys/socket.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 type socklen_t type sa_family_t diff --git a/conform/data/sys/stat.h-data b/conform/data/sys/stat.h-data index 03be4814ecd..ba80a5adc6e 100644 --- a/conform/data/sys/stat.h-data +++ b/conform/data/sys/stat.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #if !defined POSIX && !defined POSIX2008 && !defined XPG4 && !defined XPG42 type blkcnt_t diff --git a/conform/data/sys/statvfs.h-data b/conform/data/sys/statvfs.h-data index 2a74813e3d4..712fbcf47a4 100644 --- a/conform/data/sys/statvfs.h-data +++ b/conform/data/sys/statvfs.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 type {struct statvfs} element {struct statvfs} {unsigned long} f_bsize diff --git a/conform/data/sys/time.h-data b/conform/data/sys/time.h-data index 30523e1af4c..df5b6b9730e 100644 --- a/conform/data/sys/time.h-data +++ b/conform/data/sys/time.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 type {struct timeval} element {struct timeval} time_t tv_sec diff --git a/conform/data/sys/timeb.h-data b/conform/data/sys/timeb.h-data index 9638f73c8f6..a1db5696211 100644 --- a/conform/data/sys/timeb.h-data +++ b/conform/data/sys/timeb.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8 type {struct timeb} element {struct timeb} time_t time diff --git a/conform/data/sys/times.h-data b/conform/data/sys/times.h-data index c93357b7930..c4c3edf814a 100644 --- a/conform/data/sys/times.h-data +++ b/conform/data/sys/times.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type {struct tms} element {struct tms} clock_t tms_utime diff --git a/conform/data/sys/types.h-data b/conform/data/sys/types.h-data index cc28eb76d46..3330f9e195b 100644 --- a/conform/data/sys/types.h-data +++ b/conform/data/sys/types.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #if !defined POSIX # if !defined XPG4 && !defined XPG42 type blkcnt_t diff --git a/conform/data/sys/uio.h-data b/conform/data/sys/uio.h-data index b9fc66177c4..6da312c9dd2 100644 --- a/conform/data/sys/uio.h-data +++ b/conform/data/sys/uio.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008 type {struct iovec} element {struct iovec} {void*} iov_base diff --git a/conform/data/sys/un.h-data b/conform/data/sys/un.h-data index 08bf9bcfd70..8114024c8cd 100644 --- a/conform/data/sys/un.h-data +++ b/conform/data/sys/un.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 type {struct sockaddr_un} element {struct sockaddr_un} sa_family_t sun_family diff --git a/conform/data/sys/utsname.h-data b/conform/data/sys/utsname.h-data index 82f7f397cab..f9045e38fb6 100644 --- a/conform/data/sys/utsname.h-data +++ b/conform/data/sys/utsname.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type {struct utsname} element {struct utsname} char sysname [] diff --git a/conform/data/sys/wait.h-data b/conform/data/sys/wait.h-data index a6713461eaa..5998748a238 100644 --- a/conform/data/sys/wait.h-data +++ b/conform/data/sys/wait.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define pid_t __pid_t #endif diff --git a/conform/data/syslog.h-data b/conform/data/syslog.h-data index 6604d76d3e2..f72734d8f9c 100644 --- a/conform/data/syslog.h-data +++ b/conform/data/syslog.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 constant LOG_PID constant LOG_CONS constant LOG_NDELAY diff --git a/conform/data/tar.h-data b/conform/data/tar.h-data index 8477860e578..43b2d0555ce 100644 --- a/conform/data/tar.h-data +++ b/conform/data/tar.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 macro-str TMAGIC "ustar" macro-int-constant TMAGLEN {int} == 6 macro-str TVERSION "00" diff --git a/conform/data/termios.h-data b/conform/data/termios.h-data index bb2092bb6fa..87fbcb95658 100644 --- a/conform/data/termios.h-data +++ b/conform/data/termios.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type cc_t type speed_t type tcflag_t diff --git a/conform/data/threads.h-data b/conform/data/threads.h-data index 406e497726c..a6ba414fb9a 100644 --- a/conform/data/threads.h-data +++ b/conform/data/threads.h-data @@ -1,4 +1,4 @@ -#if defined ISO11 +#if defined ISO11 || defined ISO23 macro ONCE_FLAG_INIT macro thread_local diff --git a/conform/data/time.h-data b/conform/data/time.h-data index 9c1c19596e9..3b2846cd077 100644 --- a/conform/data/time.h-data +++ b/conform/data/time.h-data @@ -1,7 +1,7 @@ macro-constant NULL == 0 macro CLOCKS_PER_SEC {clock_t} -#ifdef ISO11 +#if defined ISO11 || defined ISO23 macro-int-constant TIME_UTC > 0 #endif @@ -38,11 +38,11 @@ function {char*} ctime (const time_t*) function {struct tm*} gmtime (const time_t*) function {struct tm*} localtime (const time_t*) function size_t strftime (char*, size_t, const char*, const struct tm*) -#if defined ISO11 +#if defined ISO11 || defined ISO23 function int timespec_get (struct timespec *, int) #endif -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 # if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008 symbol CLK_TCK # endif diff --git a/conform/data/uchar.h-data b/conform/data/uchar.h-data index ef27617bc4e..14718adf50f 100644 --- a/conform/data/uchar.h-data +++ b/conform/data/uchar.h-data @@ -1,4 +1,4 @@ -#if defined ISO11 +#if defined ISO11 || defined ISO23 type mbstate_t type size_t type char16_t diff --git a/conform/data/ucontext.h-data b/conform/data/ucontext.h-data index e3dcb3014bd..414635f6647 100644 --- a/conform/data/ucontext.h-data +++ b/conform/data/ucontext.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4 && !defined POSIX2008 && !defined XOPEN2K8 type mcontext_t type ucontext_t diff --git a/conform/data/ulimit.h-data b/conform/data/ulimit.h-data index 1e5e5b471de..fbe3ec25f46 100644 --- a/conform/data/ulimit.h-data +++ b/conform/data/ulimit.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 constant UL_GETFSIZE constant UL_SETFSIZE diff --git a/conform/data/unistd.h-data b/conform/data/unistd.h-data index aa070528e83..b4531868fd0 100644 --- a/conform/data/unistd.h-data +++ b/conform/data/unistd.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define uid_t __uid_t # define gid_t __gid_t diff --git a/conform/data/utime.h-data b/conform/data/utime.h-data index e3201651c1b..2ca26efab20 100644 --- a/conform/data/utime.h-data +++ b/conform/data/utime.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 #ifdef POSIX # define time_t __time_t #endif diff --git a/conform/data/utmpx.h-data b/conform/data/utmpx.h-data index cfe2a086340..28ad96a486d 100644 --- a/conform/data/utmpx.h-data +++ b/conform/data/utmpx.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 && !defined XPG4 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 && !defined XPG4 type {struct utmpx} element {struct utmpx} char ut_user [] diff --git a/conform/data/wchar.h-data b/conform/data/wchar.h-data index 243321090de..4c8a2e3c82f 100644 --- a/conform/data/wchar.h-data +++ b/conform/data/wchar.h-data @@ -1,11 +1,11 @@ #if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 type wchar_t type wint_t -# if !defined ISO99 && !defined ISO11 && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008 type wctype_t # endif type mbstate_t -# if !defined ISO99 && !defined ISO11 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 type FILE # else # define FILE __FILE @@ -15,7 +15,7 @@ type size_t type locale_t # endif tag {struct tm} -# if !defined ISO99 && !defined ISO11 && !defined UNIX98 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined UNIX98 type va_list # else # define va_list __gnuc_va_list @@ -24,7 +24,7 @@ type va_list function wint_t btowc (int) function int fwprintf (FILE*, const wchar_t*, ...) function int fwscanf (FILE*, const wchar_t*, ...) -# if !defined ISO99 && !defined ISO11 && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008 function int iswalnum (wint_t) function int iswalpha (wint_t) function int iswcntrl (wint_t) @@ -59,7 +59,7 @@ function wint_t putwc (wchar_t, FILE*) function wint_t putwchar (wchar_t) function int swprintf (wchar_t*, size_t, const wchar_t*, ...) function int swscanf (const wchar_t*, const wchar_t*, ...) -# if !defined ISO99 && !defined ISO11 && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008 function wint_t towlower (wint_t) function wint_t towupper (wint_t) # endif @@ -132,7 +132,7 @@ function {unsigned long long int} wcstoull (const wchar_t*, wchar_t**, int) # if defined UNIX98 || defined XOPEN2K function {wchar_t*} wcswcs (const wchar_t*, const wchar_t*) # endif -# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined POSIX2008 function int wcswidth (const wchar_t*, size_t) # endif function size_t wcsxfrm (wchar_t*, const wchar_t*, size_t) @@ -140,7 +140,7 @@ function size_t wcsxfrm (wchar_t*, const wchar_t*, size_t) function size_t wcsxfrm_l (wchar_t*, const wchar_t*, size_t, locale_t) # endif function int wctob (wint_t) -# if !defined ISO99 && !defined ISO11 && !defined POSIX2008 +# if !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX2008 function wctype_t wctype (const char*) function int wcwidth (wchar_t) # endif @@ -157,7 +157,7 @@ macro-int-constant WCHAR_MAX {promoted:wchar_t} >= 127 macro-constant WEOF {wint_t} macro-constant NULL == 0 -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow-header ctype.h allow-header stdio.h allow-header stdarg.h @@ -168,7 +168,7 @@ allow-header time.h #endif allow wcs[abcdefghijklmnopqrstuvwxyz]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #endif diff --git a/conform/data/wctype.h-data b/conform/data/wctype.h-data index 944fe6efabe..f939f3c6523 100644 --- a/conform/data/wctype.h-data +++ b/conform/data/wctype.h-data @@ -49,7 +49,7 @@ function wctype_t wctype_l (const char*, locale_t) macro-constant WEOF {wint_t} -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow-header ctype.h allow-header stdio.h allow-header stdarg.h @@ -62,7 +62,7 @@ allow-header wchar.h allow is[abcdefghijklmnopqrstuvwxyz]* allow to[abcdefghijklmnopqrstuvwxyz]* -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 allow *_t #endif #endif diff --git a/conform/data/wordexp.h-data b/conform/data/wordexp.h-data index 0d96d68edca..eed4754e0c9 100644 --- a/conform/data/wordexp.h-data +++ b/conform/data/wordexp.h-data @@ -1,4 +1,4 @@ -#if !defined ISO && !defined ISO99 && !defined ISO11 +#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 type wordexp_t element wordexp_t size_t we_wordc