[tlbuild] C23 backward incompatibilities
Andreas Scherer
andreas_tex at freenet.de
Wed Apr 16 16:32:30 CEST 2025
Am 14.04.25 um 23:11 schrieb Karl Berry:
> CC=gcc-14 TL_CFLAGS=gnu23 ./Build --disable-all-pkgs \
> --enable-web2c --enable-ps2pk \
> --disable-luatex \
> --disable-luajittex \
> --disable-luahbtex \
> --disable-luajithbtex \
> --disable-mflua \
> --disable-mfluajit
If I use this with "CC='gcc-14 --std=c23'" (and without --enable-ps2pk),
I find, in sequential order of failure:
(a) euptex0.c fails because of the declaration 'boolean bool;', which
ultimately comes from euptexdir/pdfutils.ch; changing this to 'boole'
makes the C compiler happy.
(b) hitex.c uses non-ANSI function 'isascii' (via kpathsea and the
ISBLANK macro). 'gcc-14 --std=c23' bombs with 'implicitly defined
function' error; this comes from GCC setting '__STRICT_ANSI__' when
invoked with '--std=<any>', so one had to add '-U__STRICT_ANSI__'.
(c) pdftex.web directly declares variable 'bool: boolean;' and will
conflict with C23 in the future; see (a) for possible solution.
I stopped trying yet another run. :o)
„Es bleibt spannend!“
Andreas
More information about the tlbuild
mailing list.