http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51749
--- Comment #25 from Nick Maclaren <nmm1 at cam dot ac.uk> --- Strictly, don't you mean feature selection macros? It isn't worth being too perfectionist on this, as the standards (both de jure and de facto) are an ungodly mess, and it is getting steadily harder to write portable code in C/C++/POSIX/etc. However, I strongly agree that taking the hard line (especially with -std=<formal standard>) is the best way to go. On the other hand, it is quite likely that a stricter line may require new options or feature selection macros - because, for example, there are codes that need a specific version of the language but also the extensions of a specific version of POSIX. Ugh.