https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62187
--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> --- I've also created an LWG issue about this, so I hope before Stage 1 starts we'll have LWG guidance saying it's OK to do this for all basic_string, not only std::string and std::wstring. We should also make __is_char<char16_t> and __is_char<char32_t> true.