It seems consistent to me.
Regards.
Hi all,
When we use tcc on Linux, we also use /usr/include/*.h.
Some definitions are only visible for C11 and controlled by use of _ISOC11_SOURCE as used by glibc (see for example http://man7.org/linux/man-pages/man7/feature_test_macros.7.html).
As tcc is C99 by default, I propose to also automatically set _ISOC99_SOURCE by default but _ISOC11_SOURCE when -std=c11 is used.
Wdyt?
Reference:
_ISOC99_SOURCE (since glibc 2.1.3)
Exposes declarations consistent with the ISO C99 standard.
Earlier glibc 2.1.x versions recognized an equivalent macro
named _ISOC9X_SOURCE (because the C99 standard had not then
been finalized). Although the use of this macro is obsolete,
glibc continues to recognize it for backward compatibility.
Defining _ISOC99_SOURCE also exposes ISO C (1990) Amendment 1
("C95") definitions. (The primary change in C95 was support
for international character sets.)
Invoking the C compiler with the option -std=c99 produces the
same effects as defining this macro.
_ISOC11_SOURCE (since glibc 2.16)
Exposes declarations consistent with the ISO C11 standard.
Defining this macro also enables C99 and C95 features (like
_ISOC99_SOURCE).
Invoking the C compiler with the option -std=c11 produces the
same effects as defining this macro.
_______________________________________________
Tinycc-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/tinycc-devel