fix incompatibilities with c++2a mode in clang

This commit is contained in:
christinaa 2018-11-17 03:15:55 +00:00 committed by Victor Zverovich
parent 19e008876b
commit 16b78ee629

View File

@ -400,8 +400,12 @@ void basic_buffer<T>::append(const U *begin, const U *end) {
} }
} // namespace internal } // namespace internal
// C++20 feature test, since r346892 Clang considers char8_t a fundamental
// type in this mode. If this is the case __cpp_char8_t will be defined.
#if !defined(__cpp_char8_t)
// A UTF-8 code unit type. // A UTF-8 code unit type.
enum char8_t: unsigned char {}; enum char8_t: unsigned char {};
#endif
// A UTF-8 string view. // A UTF-8 string view.
class u8string_view : public basic_string_view<char8_t> { class u8string_view : public basic_string_view<char8_t> {