1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-07 06:43:00 +03:00
Files
glibc/conform/data/complex.h-data
Collin Funk d18213c699 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>
2025-04-10 18:39:05 +00:00

114 lines
4.1 KiB
Plaintext

#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
macro complex
macro _Complex_I
optional-macro imaginary
optional-macro _Imaginary_I
macro I
function double cabs (double complex)
function {double complex} cacos (double complex)
function {double complex} cacosh (double complex)
function double carg (double complex)
function {double complex} casin (double complex)
function {double complex} casinh (double complex)
function {double complex} catan (double complex)
function {double complex} catanh (double complex)
function {double complex} ccos (double complex)
function {double complex} ccosh (double complex)
function {double complex} cexp (double complex)
function double cimag (double complex)
function {double complex} clog (double complex)
function {double complex} conj (double complex)
function {double complex} cpow (double complex, double complex)
function {double complex} cproj (double complex)
function double creal (double complex)
function {double complex} csin (double complex)
function {double complex} csinh (double complex)
function {double complex} csqrt (double complex)
function {double complex} ctan (double complex)
function {double complex} ctanh (double complex)
function float cabsf (float complex)
function {float complex} cacosf (float complex)
function {float complex} cacoshf (float complex)
function float cargf (float complex)
function {float complex} casinf (float complex)
function {float complex} casinhf (float complex)
function {float complex} catanf (float complex)
function {float complex} catanhf (float complex)
function {float complex} ccosf (float complex)
function {float complex} ccoshf (float complex)
function {float complex} cexpf (float complex)
function float cimagf (float complex)
function {float complex} clogf (float complex)
function {float complex} conjf (float complex)
function {float complex} cpowf (float complex, float complex)
function {float complex} cprojf (float complex)
function float crealf (float complex)
function {float complex} csinf (float complex)
function {float complex} csinhf (float complex)
function {float complex} csqrtf (float complex)
function {float complex} ctanf (float complex)
function {float complex} ctanhf (float complex)
function {long double} cabsl (long double complex)
function {long double complex} cacosl (long double complex)
function {long double complex} cacoshl (long double complex)
function {long double} cargl (long double complex)
function {long double complex} casinhl (long double complex)
function {long double complex} casinl (long double complex)
function {long double complex} catanhl (long double complex)
function {long double complex} catanl (long double complex)
function {long double complex} ccoshl (long double complex)
function {long double complex} ccosl (long double complex)
function {long double complex} cexpl (long double complex)
function {long double} cimagl (long double complex)
function {long double complex} clogl (long double complex)
function {long double complex} conjl (long double complex)
function {long double complex} cpowl (long double complex, long double complex)
function {long double complex} cprojl (long double complex)
function {long double} creall (long double complex)
function {long double complex} csinhl (long double complex)
function {long double complex} csinl (long double complex)
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 || 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)
# endif
allow cerf
allow cerfc
allow cexp2
allow cexpm1
allow clog10
allow clog1p
allow clog2
allow clgamma
allow ctgamma
allow cerff
allow cerfcf
allow cexp2f
allow cexpm1f
allow clog10f
allow clog1pf
allow clog2f
allow clgammaf
allow ctgammaf
allow cerfl
allow cerfcl
allow cexp2l
allow cexpm1l
allow clog10l
allow clog1pl
allow clog2l
allow clgammal
allow ctgammal
#endif