http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57025
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2013-04-21 14:50:56 UTC --- The C++ standard specifically says: __STDC_VERSION__ Whether __STDC_VERSION__ is predefined and if so, what its value is, are implementation-defined. So G++'s behaviour is not a bug, although we should update the docs which claim it isn't defined: http://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html