http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51773
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-01-06 10:56:31 UTC --- http://sourceware.org/bugzilla/show_bug.cgi?id=13529 should be reproducible with: #include <assert.h> static_assert( true, "valid C++" ); this could be fixed in libstdc++ by providing a fixed assert.h with #undef static_assert, but glibc shouldn't be defining the macro for __cplusplus in the first place does glibc also define macros for alignof, true, false, bool etc. in C++ mode?