1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00

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>
This commit is contained in:
Collin Funk
2025-04-04 20:48:25 -07:00
committed by Joseph Myers
parent e53eb952b9
commit d18213c699
82 changed files with 151 additions and 151 deletions

View File

@@ -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