diff options
| author | Collin Funk <collin.funk1@gmail.com> | 2025-04-04 20:48:25 -0700 |
|---|---|---|
| committer | Joseph Myers <josmyers@redhat.com> | 2025-04-10 18:39:05 +0000 |
| commit | d18213c6997a058a68bc2547dcb43cf77bc4504f (patch) | |
| tree | 5e00dae13794fe7cb1c67c8f9f5cb8c8d1bfd8e6 /conform/data/stdlib.h-data | |
| parent | e53eb952b970ac94c97d74fb447418fb327ca096 (diff) | |
| download | glibc-d18213c6997a058a68bc2547dcb43cf77bc4504f.tar.xz glibc-d18213c6997a058a68bc2547dcb43cf77bc4504f.zip | |
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 <collin.funk1@gmail.com>
Diffstat (limited to 'conform/data/stdlib.h-data')
| -rw-r--r-- | conform/data/stdlib.h-data | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data index 6913828196..0f6da09166 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 |
