Enforce Unicode encoding in MSVC
This can help to solve compilation issues on systems with Japanese locale with encodings like Shift_JIS and UTF-8-BOM. Also be more consistent using String::utf8() to represent cyrilic unicode characters in test_string.cpp Clarified some comments in test_string.cpp for some Unicode characters.
This commit is contained in:
parent
7fa941bfd8
commit
33f55369cb
2 changed files with 8 additions and 6 deletions
|
@ -327,6 +327,8 @@ if selected_platform in platform_list:
|
|||
env.Append(CCFLAGS=['/EHsc'])
|
||||
if (env["werror"]):
|
||||
env.Append(CCFLAGS=['/WX'])
|
||||
# Force to use Unicode encoding
|
||||
env.Append(MSVC_FLAGS=['/utf8'])
|
||||
else: # Rest of the world
|
||||
shadow_local_warning = []
|
||||
all_plus_warnings = ['-Wwrite-strings']
|
||||
|
|
|
@ -1017,8 +1017,8 @@ bool test_32() {
|
|||
STRIP_TEST(String("abca").lstrip("a") == "bca");
|
||||
STRIP_TEST(String("abc").rstrip("a") == "abc");
|
||||
STRIP_TEST(String("abca").rstrip("a") == "abc");
|
||||
// in utf-8 "¿" has the same first byte as "µ"
|
||||
// and the same second as "ÿ"
|
||||
// in utf-8 "¿" (\u00bf) has the same first byte as "µ" (\u00b5)
|
||||
// and the same second as "ÿ" (\u00ff)
|
||||
STRIP_TEST(String::utf8("¿").lstrip(String::utf8("µÿ")) == String::utf8("¿"));
|
||||
STRIP_TEST(String::utf8("¿").rstrip(String::utf8("µÿ")) == String::utf8("¿"));
|
||||
STRIP_TEST(String::utf8("µ¿ÿ").lstrip(String::utf8("µÿ")) == String::utf8("¿ÿ"));
|
||||
|
@ -1046,8 +1046,8 @@ bool test_32() {
|
|||
STRIP_TEST(String("abca").lstrip("qwajkl") == "bca");
|
||||
STRIP_TEST(String("abc").rstrip("qwajkl") == "abc");
|
||||
STRIP_TEST(String("abca").rstrip("qwajkl") == "abc");
|
||||
// in utf-8 "¿" has the same first byte as "µ"
|
||||
// and the same second as "ÿ"
|
||||
// in utf-8 "¿" (\u00bf) has the same first byte as "µ" (\u00b5)
|
||||
// and the same second as "ÿ" (\u00ff)
|
||||
STRIP_TEST(String::utf8("¿").lstrip(String::utf8("qwaµÿjkl")) == String::utf8("¿"));
|
||||
STRIP_TEST(String::utf8("¿").rstrip(String::utf8("qwaµÿjkl")) == String::utf8("¿"));
|
||||
STRIP_TEST(String::utf8("µ¿ÿ").lstrip(String::utf8("qwaµÿjkl")) == String::utf8("¿ÿ"));
|
||||
|
@ -1068,8 +1068,8 @@ bool test_33() {
|
|||
bool test_34() {
|
||||
OS::get_singleton()->print("\n\nTest 34: Cyrillic to_lower()\n");
|
||||
|
||||
String upper = L"АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
|
||||
String lower = L"абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
|
||||
String upper = String::utf8("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ");
|
||||
String lower = String::utf8("абвгдеёжзийклмнопрстуфхцчшщъыьэюя");
|
||||
|
||||
String test = upper.to_lower();
|
||||
|
||||
|
|
Loading…
Reference in a new issue