https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63776
--- Comment #13 from Jonathan Wakely <redi at gcc dot gnu.org> --- Oops, paste fail. The second one should be: #include <regex> #include <cassert> int main() { std::locale::global(std::locale("en_US.UTF-8")); std::wstring s = L"joão méroço"; std::wregex r{L"[[:alpha:]]{4} [[:alpha:]]{6}"}; assert( regex_match(s, r) ); }