On 2026-04-25 01:10, Bruno Haible wrote:
Paul Eggert wrote:
This is only a partial cleanup; to be cleaner we’d need to
move declarations of Gnulib extensions like c32isalpha
into a separate .h file.
I would not like such a move at all. IMO it is more important that
programmers can remember which #includes to use, than the namespace
cleanliness.
I'm in inclined to be in the same boat.
"POSIX.1-2024 allows, but does not require, this file to make visible
all symbols from ..."
I made that Gnulib doc patch because POSIX's backsliding on namespace
cleanliness was news to me! One wonders why they didn't just cram
everything into "#include <posix.h>" and be done with it.
That is, we cannot achieve the goal that compiling a source code file
would indicate to the programmer which #includes are missing. We can only
approximate this goal.
We could approximate it better than we do, at least if people defined a
macro like GNULIB_POSIXCHECK which means they care more about
portability than efficiency.
This namespace stuff is relatively low priority, though. I did the
current cleanup only because I was trying to make these changes safer
for Gawk, which does things in a different way.