Hi folks,
I am under the impression that _XOPEN_SOURCE is a supserset of
_POSIX_C_SOURCE.
glibc documents the following happens:
Macro: _XOPEN_SOURCE
Macro: _XOPEN_SOURCE_EXTENDED
If you define this macro, functionality described in the X/Open Portability
Guide is included. This is a superset of the POSIX.1 and POSIX.2 functionality
and in fact _POSIX_SOURCE and _POSIX_C_SOURCE are automatically defined.
Should we do the same? that will probably simplify the header situation,
not needing to separately test for _XOPEN_SOURCE most of the time.
math.h is just "wrong" as it is. lots of stuff only guarded by
_XOPEN_SOURCE which are probably also in _POSIX_C_SOURCE and C99/C11.
We're apparently getting by with implicit declarations and -D_NETBSD_SOURCE
:-)