diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2017-02-12 21:42:35 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2017-02-12 21:42:35 +0000 |
commit | bd18417b4d3124a298e86ba351286a91c2ce6c1e (patch) | |
tree | c895e4c1225a1e778dda818663a8f6c9cab078bf /test | |
parent | effe3dc412528d0e34bfa41a56d1dc0a03e1e0bc (diff) | |
download | libcxx-bd18417b4d3124a298e86ba351286a91c2ce6c1e.tar.gz |
test: use char32_t rather than wchar_t
wchar_t is not as portable as char32_t. On Windows, wchar_t is
16-bytes and on Linux 32-bits. The conversion to utf8 causes the
characters to exceed the limits on char16_t, resulting in tautological
comparisons.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294917 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/std/localization/locale.stdcvt/codecvt_utf16_in.pass.cpp | 40 | ||||
-rw-r--r-- | test/std/localization/locale.stdcvt/codecvt_utf8_in.pass.cpp | 18 |
2 files changed, 29 insertions, 29 deletions
diff --git a/test/std/localization/locale.stdcvt/codecvt_utf16_in.pass.cpp b/test/std/localization/locale.stdcvt/codecvt_utf16_in.pass.cpp index 4d710c1a9..56d6262d0 100644 --- a/test/std/localization/locale.stdcvt/codecvt_utf16_in.pass.cpp +++ b/test/std/localization/locale.stdcvt/codecvt_utf16_in.pass.cpp @@ -28,11 +28,11 @@ int main() { { - typedef std::codecvt_utf16<wchar_t> C; + typedef std::codecvt_utf16<char32_t> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xD8), char(0xC0), char(0xDC), char(0x03)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -67,11 +67,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf16<wchar_t, 0x1000> C; + typedef std::codecvt_utf16<char32_t, 0x1000> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xD8), char(0xC0), char(0xDC), char(0x03)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -106,11 +106,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf16<wchar_t, 0x10ffff, std::consume_header> C; + typedef std::codecvt_utf16<char32_t, 0x10ffff, std::consume_header> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[6] = {char(0xFE), char(0xFF), char(0xD8), char(0xC0), char(0xDC), char(0x03)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+6, np, &w, &w+1, wp); @@ -145,11 +145,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf16<wchar_t, 0x10ffff, std::little_endian> C; + typedef std::codecvt_utf16<char32_t, 0x10ffff, std::little_endian> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xC0), char(0xD8), char(0x03), char(0xDC)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -184,11 +184,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf16<wchar_t, 0x1000, std::little_endian> C; + typedef std::codecvt_utf16<char32_t, 0x1000, std::little_endian> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xC0), char(0xD8), char(0x03), char(0xDC)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -223,13 +223,13 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf16<wchar_t, 0x10ffff, std::codecvt_mode( - std::consume_header | - std::little_endian)> C; + typedef std::codecvt_utf16<char32_t, 0x10ffff, + std::codecvt_mode(std::consume_header | std::little_endian)> C; + C c; - wchar_t w = 0; + char32_t w = 0; char n[6] = {char(0xFF), char(0xFE), char(0xC0), char(0xD8), char(0x03), char(0xDC)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+6, np, &w, &w+1, wp); diff --git a/test/std/localization/locale.stdcvt/codecvt_utf8_in.pass.cpp b/test/std/localization/locale.stdcvt/codecvt_utf8_in.pass.cpp index 382ea1226..308bb9da2 100644 --- a/test/std/localization/locale.stdcvt/codecvt_utf8_in.pass.cpp +++ b/test/std/localization/locale.stdcvt/codecvt_utf8_in.pass.cpp @@ -28,11 +28,11 @@ int main() { { - typedef std::codecvt_utf8<wchar_t> C; + typedef std::codecvt_utf8<char32_t> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xF1), char(0x80), char(0x80), char(0x83)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -67,11 +67,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf8<wchar_t, 0x1000> C; + typedef std::codecvt_utf8<char32_t, 0x1000> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[4] = {char(0xF1), char(0x80), char(0x80), char(0x83)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+4, np, &w, &w+1, wp); @@ -106,11 +106,11 @@ int main() assert(w == 0x56); } { - typedef std::codecvt_utf8<wchar_t, 0xFFFFFFFF, std::consume_header> C; + typedef std::codecvt_utf8<char32_t, 0xFFFFFFFF, std::consume_header> C; C c; - wchar_t w = 0; + char32_t w = 0; char n[7] = {char(0xEF), char(0xBB), char(0xBF), char(0xF1), char(0x80), char(0x80), char(0x83)}; - wchar_t* wp = nullptr; + char32_t* wp = nullptr; std::mbstate_t m; const char* np = nullptr; std::codecvt_base::result r = c.in(m, n, n+7, np, &w, &w+1, wp); |