https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80265
--- Comment #39 from Jonathan Wakely <redi at gcc dot gnu.org> --- It seems that clang doesn't support using __builtin_constant_p this way, so using char_traits<wchar_t> in constant expressions isn't going to work until they implement is_constant_evaluated. The __constant_string_p function does work with the Intel compiler though (since icc 17.0.0 by the look of it), so is worth keeping.