https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24537
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> --- char_traits shouldn't need to be uglified, because it's a reserved name anyway, due to std::char_traits. That means users can't define macros with that name. If they get ambiguities due to "using namespace __gnu_cxx;" then they should not do that. Thee are other names that should be uglified though, see PR 64135.