Closed as not planned
Closed as not planned
Description
Currently, _LIBCPP_HAS_NO_CHAR8_T
is always defined if not compiled with -std=c++20
or above:
llvm-project/libcxx/include/__config
Lines 702 to 704 in 3ab2247
But both Clang and GCC allow char8_t
in older standards with the -fchar8_t
flag: https://godbolt.org/z/ePcrqvWsa
Someone specifying -fchar8_t
presumably is going to use char8_t
consistently even before C++20, so it makes sense to allow using library facilities for char8_t
. One problem I can think of is that some names (like u8string
) aren't reserved in C++17, but someone using -fchar8_t
should know not to use them. Plus libstdc++ supports it.