#include <iostream> template<typename> struct ct; template<> struct ct<char> { using type = char; }; int main() { const auto *u8s = u8"text"; // u8sの型はC++17まではconst char *だったが、C++20からはconst char8_t *になる const char *ps = u8s; // C++17までは適格だったがC++20からは不適格 const auto *u8rs = u8R"(text)"; // u8rsの型はC++17まではconst char *だったが、C++20からはconst char8_t *になる const char *prs = u8rs; // C++17までは適格だったがC++20からは不適格