http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51749
--- Comment #19 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Jonathan Wakely from comment #18) > Comment 8 is only referring to <cstdio> et al putting standard C names in > the global namespace as well as in namespace std, which is legal. We all > agree it's not legal to also put names that aren't from ISO C (e.g. POSIX > names) in the global namespace. Has anyone checked recently what exactly we still need -D_GNU_SOURCE for in the public headers (as opposed to just the libstdc++ code), as compared to say _ISOC99_SOURCE for glibc, at least for C++11?