[libcxx] [test] Update locale names for Windows.
locale.codecvt.byname/ctor_char.pass.cpp:
This test used to use "en_US" as a plain string instead of using platform_support.
Need to fix this because MS STL expects "en-US" instead.
platform_support.h:
These are the legacy Windows locale names. Should use IETF tags instead.
I've also added en_US, since a test was using that as a locale string as well.
msvc_stdlib_force_include.hpp:
Remove _MSVC_STL_VER. The libraries will directly define _MSVC_STL_VERSION in the future.
Fixes D29351.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@305000 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/std/localization/locale.categories/category.ctype/locale.codecvt.byname/ctor_char.pass.cpp b/test/std/localization/locale.categories/category.ctype/locale.codecvt.byname/ctor_char.pass.cpp
index 3495778..24c2f23 100644
--- a/test/std/localization/locale.categories/category.ctype/locale.codecvt.byname/ctor_char.pass.cpp
+++ b/test/std/localization/locale.categories/category.ctype/locale.codecvt.byname/ctor_char.pass.cpp
@@ -17,6 +17,8 @@
#include <locale>
#include <cassert>
+#include "platform_support.h"
+
typedef std::codecvt_byname<char, char, std::mbstate_t> F;
class my_facet
@@ -38,12 +40,12 @@
int main()
{
{
- std::locale l(std::locale::classic(), new my_facet("en_US"));
+ std::locale l(std::locale::classic(), new my_facet(LOCALE_en_US));
assert(my_facet::count == 1);
}
assert(my_facet::count == 0);
{
- my_facet f("en_US", 1);
+ my_facet f(LOCALE_en_US, 1);
assert(my_facet::count == 1);
{
std::locale l(std::locale::classic(), &f);
@@ -53,12 +55,12 @@
}
assert(my_facet::count == 0);
{
- std::locale l(std::locale::classic(), new my_facet(std::string("en_US")));
+ std::locale l(std::locale::classic(), new my_facet(std::string(LOCALE_en_US)));
assert(my_facet::count == 1);
}
assert(my_facet::count == 0);
{
- my_facet f(std::string("en_US"), 1);
+ my_facet f(std::string(LOCALE_en_US), 1);
assert(my_facet::count == 1);
{
std::locale l(std::locale::classic(), &f);
diff --git a/test/support/msvc_stdlib_force_include.hpp b/test/support/msvc_stdlib_force_include.hpp
index e23e5ff..954cf51 100644
--- a/test/support/msvc_stdlib_force_include.hpp
+++ b/test/support/msvc_stdlib_force_include.hpp
@@ -28,11 +28,6 @@
#error This header may not be used when targeting libc++
#endif
-// Indicates that we are using the MSVC standard library.
-#ifndef _MSVC_STL_VER
- #define _MSVC_STL_VER 42
-#endif
-
#ifndef _LIBCXX_IN_DEVCRT
struct AssertionDialogAvoider {
AssertionDialogAvoider() {
diff --git a/test/support/platform_support.h b/test/support/platform_support.h
index 737e5d7..a9b5b98 100644
--- a/test/support/platform_support.h
+++ b/test/support/platform_support.h
@@ -19,16 +19,18 @@
#ifdef _WIN32
// WARNING: Windows does not support UTF-8 codepages.
// Locales are "converted" using http://docs.moodle.org/dev/Table_of_locales
-#define LOCALE_en_US_UTF_8 "English_United States.1252"
-#define LOCALE_cs_CZ_ISO8859_2 "Czech_Czech Republic.1250"
-#define LOCALE_fr_FR_UTF_8 "French_France.1252"
-#define LOCALE_fr_CA_ISO8859_1 "French_Canada.1252"
-#define LOCALE_ru_RU_UTF_8 "Russian_Russia.1251"
-#define LOCALE_zh_CN_UTF_8 "Chinese_China.936"
+#define LOCALE_en_US "en-US"
+#define LOCALE_en_US_UTF_8 "en-US"
+#define LOCALE_cs_CZ_ISO8859_2 "cs-CZ"
+#define LOCALE_fr_FR_UTF_8 "fr-FR"
+#define LOCALE_fr_CA_ISO8859_1 "fr-CA"
+#define LOCALE_ru_RU_UTF_8 "ru-RU"
+#define LOCALE_zh_CN_UTF_8 "zh-CN"
#elif defined(__CloudABI__)
// Timezones are integrated into locales through LC_TIMEZONE_MASK on
// CloudABI. LC_ALL_MASK can only be used if a timezone has also been
// provided. UTC should be all right.
+#define LOCALE_en_US "en_US"
#define LOCALE_en_US_UTF_8 "en_US.UTF-8@UTC"
#define LOCALE_fr_FR_UTF_8 "fr_FR.UTF-8@UTC"
#define LOCALE_fr_CA_ISO8859_1 "fr_CA.ISO-8859-1@UTC"
@@ -36,6 +38,7 @@
#define LOCALE_ru_RU_UTF_8 "ru_RU.UTF-8@UTC"
#define LOCALE_zh_CN_UTF_8 "zh_CN.UTF-8@UTC"
#else
+#define LOCALE_en_US "en_US"
#define LOCALE_en_US_UTF_8 "en_US.UTF-8"
#define LOCALE_fr_FR_UTF_8 "fr_FR.UTF-8"
#ifdef __linux__