diff --git a/libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp b/libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp --- a/libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp +++ b/libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp @@ -26,7 +26,7 @@ #ifndef TEST_HAS_NO_WIDE_CHARACTERS test_hash_enabled_for_type(); #endif -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test_hash_enabled_for_type(); #endif test_hash_enabled_for_type(); diff --git a/libcxx/test/std/strings/basic.string.hash/strings.pass.cpp b/libcxx/test/std/strings/basic.string.hash/strings.pass.cpp --- a/libcxx/test/std/strings/basic.string.hash/strings.pass.cpp +++ b/libcxx/test/std/strings/basic.string.hash/strings.pass.cpp @@ -44,7 +44,7 @@ int main(int, char**) { test(); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(); #endif test(); diff --git a/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp --- a/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp +++ b/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp @@ -13,7 +13,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string u8string; #else typedef std::string u8string; diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign2.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign2.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign2.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign2.pass.cpp @@ -17,7 +17,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T constexpr bool test_constexpr() { char8_t c = u'1'; diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign3.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign3.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign3.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/assign3.pass.cpp @@ -21,7 +21,7 @@ TEST_CONSTEXPR_CXX20 bool test() { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T char8_t s2[3] = {0}; assert(std::char_traits::assign(s2, 3, char8_t(5)) == s2); assert(s2[0] == char8_t(5)); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/compare.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/compare.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/compare.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/compare.pass.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T constexpr bool test_constexpr() { return std::char_traits::compare(u8"123", u8"223", 3) < 0 diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/copy.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/copy.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/copy.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/copy.pass.cpp @@ -21,7 +21,7 @@ TEST_CONSTEXPR_CXX20 bool test() { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T char8_t s1[] = {1, 2, 3}; char8_t s2[3] = {0}; assert(std::char_traits::copy(s2, s1, 3) == s2); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eof.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eof.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eof.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eof.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T std::char_traits::int_type i = std::char_traits::eof(); ((void)i); // Prevent unused warning #endif diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert( std::char_traits::eq(u8'a', u8'a')); assert(!std::char_traits::eq(u8'a', u8'A')); #endif diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq_int_type.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq_int_type.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq_int_type.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/eq_int_type.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert( std::char_traits::eq_int_type(u8'a', u8'a')); assert(!std::char_traits::eq_int_type(u8'a', u8'A')); assert(!std::char_traits::eq_int_type(std::char_traits::eof(), u8'A')); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/find.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/find.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/find.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/find.pass.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T constexpr bool test_constexpr() { constexpr const char8_t *p = u8"123"; diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/length.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/length.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/length.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/length.pass.cpp @@ -18,7 +18,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T constexpr bool test_constexpr() { return std::char_traits::length(u8"") == 0 diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/lt.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/lt.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/lt.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/lt.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert(!std::char_traits::lt(u8'a', u8'a')); assert( std::char_traits::lt(u8'A', u8'a')); #endif diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/move.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/move.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/move.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/move.pass.cpp @@ -21,7 +21,7 @@ TEST_CONSTEXPR_CXX20 bool test() { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T char8_t s1[] = {1, 2, 3}; assert(std::char_traits::move(s1, s1+1, 2) == s1); assert(s1[0] == char8_t(2)); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/not_eof.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/not_eof.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/not_eof.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/not_eof.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert(std::char_traits::not_eof(u8'a') == u8'a'); assert(std::char_traits::not_eof(u8'A') == u8'A'); assert(std::char_traits::not_eof(0) == 0); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_char_type.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_char_type.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_char_type.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_char_type.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert(std::char_traits::to_char_type(u8'a') == u8'a'); assert(std::char_traits::to_char_type(u8'A') == u8'A'); assert(std::char_traits::to_char_type(0) == 0); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_int_type.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_int_type.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_int_type.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/to_int_type.pass.cpp @@ -20,7 +20,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert(std::char_traits::to_int_type(u8'a') == u8'a'); assert(std::char_traits::to_int_type(u8'A') == u8'A'); assert(std::char_traits::to_int_type(0) == 0); diff --git a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/types.pass.cpp b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/types.pass.cpp --- a/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/types.pass.cpp +++ b/libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char8_t/types.pass.cpp @@ -26,7 +26,7 @@ int main(int, char**) { -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T static_assert((std::is_same::char_type, char8_t>::value), ""); static_assert((std::is_same::int_type, unsigned int>::value), ""); static_assert((std::is_same::off_type, std::streamoff>::value), ""); diff --git a/libcxx/test/std/strings/string.classes/typedefs.compile.pass.cpp b/libcxx/test/std/strings/string.classes/typedefs.compile.pass.cpp --- a/libcxx/test/std/strings/string.classes/typedefs.compile.pass.cpp +++ b/libcxx/test/std/strings/string.classes/typedefs.compile.pass.cpp @@ -26,7 +26,7 @@ #ifndef TEST_HAS_NO_WIDE_CHARACTERS static_assert((std::is_same >::value), ""); #endif -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T static_assert((std::is_same >::value), ""); #endif static_assert((std::is_same >::value), ""); diff --git a/libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp b/libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp @@ -27,7 +27,7 @@ #ifndef TEST_HAS_NO_WIDE_CHARACTERS test_hash_enabled_for_type(); #endif -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test_hash_enabled_for_type(); #endif test_hash_enabled_for_type(); diff --git a/libcxx/test/std/strings/string.view/string.view.hash/string_view.pass.cpp b/libcxx/test/std/strings/string.view/string.view.hash/string_view.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.hash/string_view.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.hash/string_view.pass.cpp @@ -61,7 +61,7 @@ int main(int, char**) { test(); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(); #endif test(); diff --git a/libcxx/test/std/strings/string.view/string.view.capacity/capacity.pass.cpp b/libcxx/test/std/strings/string.view/string.view.capacity/capacity.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.capacity/capacity.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.capacity/capacity.pass.cpp @@ -77,7 +77,7 @@ int main(int, char**) { test1 (); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test1 (); #endif test1 (); @@ -98,7 +98,7 @@ test2 ( L"", 0 ); #endif -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test2 ( u8"ABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDEABCDE", 105 ); test2 ( u8"ABCDE", 5 ); test2 ( u8"a", 1 ); diff --git a/libcxx/test/std/strings/string.view/string.view.cons/assign.pass.cpp b/libcxx/test/std/strings/string.view/string.view.cons/assign.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.cons/assign.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.cons/assign.pass.cpp @@ -33,7 +33,7 @@ int main(int, char**) { assert( test ( "1234")); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T assert( test (u8"1234")); #endif #if TEST_STD_VER >= 11 @@ -46,7 +46,7 @@ #if TEST_STD_VER > 11 static_assert( test ({ "abc", 3}), ""); -# if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert( test ({u8"abc", 3}), ""); # endif static_assert( test ({ u"abc", 3}), ""); diff --git a/libcxx/test/std/strings/string.view/string.view.cons/default.pass.cpp b/libcxx/test/std/strings/string.view/string.view.cons/default.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.cons/default.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.cons/default.pass.cpp @@ -39,7 +39,7 @@ int main(int, char**) { test (); test (); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test (); #endif test (); diff --git a/libcxx/test/std/strings/string.view/string.view.cons/from_string.pass.cpp b/libcxx/test/std/strings/string.view/string.view.cons/from_string.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.cons/from_string.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.cons/from_string.pass.cpp @@ -43,7 +43,7 @@ test ( std::wstring() ); #endif -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test ( std::u8string{u8"QBCDE"} ); test ( std::u8string{u8""} ); test ( std::u8string{} ); diff --git a/libcxx/test/std/strings/string.view/string.view.iterators/begin.pass.cpp b/libcxx/test/std/strings/string.view/string.view.iterators/begin.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.iterators/begin.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.iterators/begin.pass.cpp @@ -44,7 +44,7 @@ int main(int, char**) { typedef std::string_view string_view; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string_view u8string_view; #endif typedef std::u16string_view u16string_view; @@ -54,7 +54,7 @@ test(u16string_view()); test(u32string_view()); test(string_view ( "123")); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(u8string_view{u8"123"}); #endif #if TEST_STD_VER >= 11 @@ -71,21 +71,21 @@ #if TEST_STD_VER > 11 { constexpr string_view sv { "123", 3 }; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T constexpr u8string_view u8sv {u8"123", 3 }; #endif constexpr u16string_view u16sv {u"123", 3 }; constexpr u32string_view u32sv {U"123", 3 }; static_assert ( *sv.begin() == sv[0], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *u8sv.begin() == u8sv[0], "" ); #endif static_assert ( *u16sv.begin() == u16sv[0], "" ); static_assert ( *u32sv.begin() == u32sv[0], "" ); static_assert ( *sv.cbegin() == sv[0], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *u8sv.cbegin() == u8sv[0], "" ); #endif static_assert ( *u16sv.cbegin() == u16sv[0], "" ); diff --git a/libcxx/test/std/strings/string.view/string.view.iterators/end.pass.cpp b/libcxx/test/std/strings/string.view/string.view.iterators/end.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.iterators/end.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.iterators/end.pass.cpp @@ -53,7 +53,7 @@ int main(int, char**) { typedef std::string_view string_view; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string_view u8string_view; #endif typedef std::u16string_view u16string_view; @@ -63,7 +63,7 @@ test(u16string_view()); test(u32string_view()); test(string_view ( "123")); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(u8string_view{u8"123"}); #endif #if TEST_STD_VER >= 11 @@ -80,21 +80,21 @@ #if TEST_STD_VER > 11 { constexpr string_view sv { "123", 3 }; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T constexpr u8string_view u8sv {u8"123", 3 }; #endif constexpr u16string_view u16sv {u"123", 3 }; constexpr u32string_view u32sv {U"123", 3 }; static_assert ( sv.begin() != sv.end(), "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( u8sv.begin() != u8sv.end(), "" ); #endif static_assert ( u16sv.begin() != u16sv.end(), "" ); static_assert ( u32sv.begin() != u32sv.end(), "" ); static_assert ( sv.begin() != sv.cend(), "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( u8sv.begin() != u8sv.cend(), "" ); #endif static_assert ( u16sv.begin() != u16sv.cend(), "" ); diff --git a/libcxx/test/std/strings/string.view/string.view.iterators/rbegin.pass.cpp b/libcxx/test/std/strings/string.view/string.view.iterators/rbegin.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.iterators/rbegin.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.iterators/rbegin.pass.cpp @@ -45,7 +45,7 @@ int main(int, char**) { typedef std::string_view string_view; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string_view u8string_view; #endif typedef std::u16string_view u16string_view; @@ -55,7 +55,7 @@ test(u16string_view()); test(u32string_view()); test(string_view ( "123")); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(u8string_view{u8"123"}); #endif #if TEST_STD_VER >= 11 @@ -72,21 +72,21 @@ #if TEST_STD_VER > 14 { constexpr string_view sv { "123", 3 }; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T constexpr u8string_view u8sv {u8"123", 3 }; #endif constexpr u16string_view u16sv {u"123", 3 }; constexpr u32string_view u32sv {U"123", 3 }; static_assert ( *sv.rbegin() == sv[2], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *u8sv.rbegin() == u8sv[2], "" ); #endif static_assert ( *u16sv.rbegin() == u16sv[2], "" ); static_assert ( *u32sv.rbegin() == u32sv[2], "" ); static_assert ( *sv.crbegin() == sv[2], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *u8sv.crbegin() == u8sv[2], "" ); #endif static_assert ( *u16sv.crbegin() == u16sv[2], "" ); diff --git a/libcxx/test/std/strings/string.view/string.view.iterators/rend.pass.cpp b/libcxx/test/std/strings/string.view/string.view.iterators/rend.pass.cpp --- a/libcxx/test/std/strings/string.view/string.view.iterators/rend.pass.cpp +++ b/libcxx/test/std/strings/string.view/string.view.iterators/rend.pass.cpp @@ -53,7 +53,7 @@ int main(int, char**) { typedef std::string_view string_view; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string_view u8string_view; #endif typedef std::u16string_view u16string_view; @@ -63,7 +63,7 @@ test(u16string_view()); test(u32string_view()); test(string_view ( "123")); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test(u8string_view{u8"123"}); #endif #if TEST_STD_VER >= 11 @@ -80,21 +80,21 @@ #if TEST_STD_VER > 14 { constexpr string_view sv { "123", 3 }; -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T constexpr u8string_view u8sv {u8"123", 3 }; #endif constexpr u16string_view u16sv {u"123", 3 }; constexpr u32string_view u32sv {U"123", 3 }; static_assert ( *--sv.rend() == sv[0], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *--u8sv.rend() == u8sv[0], "" ); #endif static_assert ( *--u16sv.rend() == u16sv[0], "" ); static_assert ( *--u32sv.rend() == u32sv[0], "" ); static_assert ( *--sv.crend() == sv[0], "" ); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +# ifndef TEST_HAS_NO_CHAR8_T static_assert ( *--u8sv.crend() == u8sv[0], "" ); #endif static_assert ( *--u16sv.crend() == u16sv[0], "" ); diff --git a/libcxx/test/std/strings/string.view/string_view.literals/literal.pass.cpp b/libcxx/test/std/strings/string.view/string_view.literals/literal.pass.cpp --- a/libcxx/test/std/strings/string.view/string_view.literals/literal.pass.cpp +++ b/libcxx/test/std/strings/string.view/string_view.literals/literal.pass.cpp @@ -15,7 +15,7 @@ #include "test_macros.h" -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T typedef std::u8string_view u8string_view; #else typedef std::string_view u8string_view; diff --git a/libcxx/test/std/strings/string.view/types.pass.cpp b/libcxx/test/std/strings/string.view/types.pass.cpp --- a/libcxx/test/std/strings/string.view/types.pass.cpp +++ b/libcxx/test/std/strings/string.view/types.pass.cpp @@ -73,7 +73,7 @@ { test >(); test >(); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test >(); #endif static_assert((std::is_same::traits_type, diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_integral.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_integral.pass.cpp --- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_integral.pass.cpp +++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_integral.pass.cpp @@ -84,7 +84,7 @@ test_is_integral(); test_is_integral(); test_is_integral(); -#if defined(__cpp_lib_char8_t) && __cpp_lib_char8_t >= 201811L +#ifndef TEST_HAS_NO_CHAR8_T test_is_integral(); #endif