Oops. Previous patch would only work on Linux. Now support Darwin and Windows as
well (although I haven't tested them).

http://reviews.llvm.org/D4759

Files:
  test/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
  test/input.output/iostreams.base/ios/basic.ios.members/move.pass.cpp
  test/input.output/iostreams.base/ios/basic.ios.members/swap.pass.cpp
  
test/input.output/stream.buffers/streambuf/streambuf.members/streambuf.locales/locales.pass.cpp
  test/lit.cfg
  
test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_1.pass.cpp
  
test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_many.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_ru_RU.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_ru_RU.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/curr_symbol.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_point.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/frac_digits.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/grouping.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/neg_format.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/negative_sign.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/pos_format.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/positive_sign.pass.cpp
  
test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/date_order.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/date_order_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_date.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_date_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_time.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_time_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_year.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.get.byname/get_year_wide.pass.cpp
  
test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
  
test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/decimal_point.pass.cpp
  
test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
  
test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
  test/localization/locales/locale/locale.cons/assign.pass.cpp
  test/localization/locales/locale/locale.cons/char_pointer.pass.cpp
  test/localization/locales/locale/locale.cons/copy.pass.cpp
  test/localization/locales/locale/locale.cons/locale_char_pointer_cat.pass.cpp
  test/localization/locales/locale/locale.cons/locale_facetptr.pass.cpp
  test/localization/locales/locale/locale.cons/locale_locale_cat.pass.cpp
  test/localization/locales/locale/locale.cons/locale_string_cat.pass.cpp
  test/localization/locales/locale/locale.cons/string.pass.cpp
  test/re/re.alg/re.alg.match/basic.pass.cpp
  test/re/re.alg/re.alg.match/ecma.pass.cpp
  test/re/re.alg/re.alg.match/extended.pass.cpp
  test/re/re.alg/re.alg.search/awk.pass.cpp
  test/re/re.alg/re.alg.search/basic.pass.cpp
  test/re/re.alg/re.alg.search/ecma.pass.cpp
  test/re/re.alg/re.alg.search/extended.pass.cpp
  test/re/re.traits/lookup_collatename.pass.cpp
  test/re/re.traits/transform.pass.cpp
  test/re/re.traits/transform_primary.pass.cpp
Index: test/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
===================================================================
--- test/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
+++ test/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <ios>
 
 // template <class charT, class traits> class basic_ios
Index: test/input.output/iostreams.base/ios/basic.ios.members/move.pass.cpp
===================================================================
--- test/input.output/iostreams.base/ios/basic.ios.members/move.pass.cpp
+++ test/input.output/iostreams.base/ios/basic.ios.members/move.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <ios>
 
 // template <class charT, class traits> class basic_ios
Index: test/input.output/iostreams.base/ios/basic.ios.members/swap.pass.cpp
===================================================================
--- test/input.output/iostreams.base/ios/basic.ios.members/swap.pass.cpp
+++ test/input.output/iostreams.base/ios/basic.ios.members/swap.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <ios>
 
 // template <class charT, class traits> class basic_ios
Index: test/input.output/stream.buffers/streambuf/streambuf.members/streambuf.locales/locales.pass.cpp
===================================================================
--- test/input.output/stream.buffers/streambuf/streambuf.members/streambuf.locales/locales.pass.cpp
+++ test/input.output/stream.buffers/streambuf/streambuf.members/streambuf.locales/locales.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <streambuf>
 
 // template <class charT, class traits = char_traits<charT> >
Index: test/lit.cfg
===================================================================
--- test/lit.cfg
+++ test/lit.cfg
@@ -3,6 +3,7 @@
 # Configuration file for the 'lit' test runner.
 
 import errno
+import locale
 import os
 import platform
 import re
@@ -175,6 +176,42 @@
 # test_source_root: The root path where tests are located.
 config.test_source_root = os.path.dirname(__file__)
 
+# Figure out which of the required locales we support
+locales = {
+    'Darwin': {
+        'en_US.UTF-8': 'en_US.UTF-8',
+        'cs_CZ.ISO8859-2': 'cs_CZ.ISO8859-2',
+        'fr_FR.UTF-8': 'fr_FR.UTF-8',
+        'fr_CA.ISO8859-1': 'cs_CZ.ISO8859-1',
+        'ru_RU.UTF-8': 'ru_RU.UTF-8',
+        'zh_CN.UTF-8': 'zh_CN.UTF-8',
+    },
+    'Linux': {
+        'en_US.UTF-8': 'en_US.UTF-8',
+        'cs_CZ.ISO8859-2': 'cs_CZ.ISO-8859-2',
+        'fr_FR.UTF-8': 'fr_FR.UTF-8',
+        'fr_CA.ISO8859-1': 'fr_CA.ISO-8859-1',
+        'ru_RU.UTF-8': 'ru_RU.UTF-8',
+        'zh_CN.UTF-8': 'zh_CN.UTF-8',
+    },
+    'Windows': {
+        'en_US.UTF-8': 'English_United States.1252',
+        'cs_CZ.ISO8859-2': 'Czech_Czech Republic.1250',
+        'fr_FR.UTF-8': 'French_France.1252',
+        'fr_CA.ISO8859-1': 'French_Canada.1252',
+        'ru_RU.UTF-8': 'Russian_Russia.1251',
+        'zh_CN.UTF-8': 'Chinese_China.936',
+    },
+}
+
+for feature, loc in locales[platform.system()].items():
+    try:
+        locale.setlocale(locale.LC_ALL, loc)
+        config.available_features.add('locale.{}'.format(feature))
+    except:
+        lit_config.warning('The locale {} is not supported by your platoform. '
+                           'Some tests will be unsupported.'.format(loc))
+
 # Gather various compiler parameters.
 cxx_under_test = lit_config.params.get('cxx_under_test', None)
 if cxx_under_test is None:
Index: test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_1.pass.cpp
===================================================================
--- test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_1.pass.cpp
+++ test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_1.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_CA.UTF-8
+
 // <locale>
 
 // template <class charT> class ctype_byname;
Index: test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_many.pass.cpp
===================================================================
--- test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_many.pass.cpp
+++ test/localization/locale.categories/category.ctype/locale.ctype.byname/narrow_many.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_CA.UTF-8
+
 // <locale>
 
 // template <class charT> class ctype_byname;
Index: test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
@@ -9,6 +9,8 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // class money_get<charT, InputIterator>
Index: test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_ru_RU.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_ru_RU.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_ru_RU.pass.cpp
@@ -9,6 +9,8 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // class money_get<charT, InputIterator>
Index: test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class money_get<charT, InputIterator>
Index: test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
@@ -9,6 +9,8 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // class money_put<charT, OutputIterator>
Index: test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_ru_RU.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_ru_RU.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_ru_RU.pass.cpp
@@ -9,6 +9,8 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // class money_put<charT, OutputIterator>
Index: test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class money_put<charT, OutputIterator>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/curr_symbol.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/curr_symbol.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/curr_symbol.pass.cpp
@@ -9,6 +9,11 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_point.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_point.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/decimal_point.pass.cpp
@@ -9,6 +9,11 @@
 
 // <locale>
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // class moneypunct_byname<charT, International>
 
 // charT decimal_point() const;
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/frac_digits.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/frac_digits.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/frac_digits.pass.cpp
@@ -9,6 +9,11 @@
 
 // <locale>
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // class moneypunct_byname<charT, International>
 
 // int frac_digits() const;
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/grouping.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/grouping.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/grouping.pass.cpp
@@ -9,6 +9,11 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/neg_format.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/neg_format.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/neg_format.pass.cpp
@@ -9,6 +9,11 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/negative_sign.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/negative_sign.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/negative_sign.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/pos_format.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/pos_format.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/pos_format.pass.cpp
@@ -9,6 +9,11 @@
 //
 // XFAIL: apple-darwin
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/positive_sign.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/positive_sign.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/positive_sign.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
===================================================================
--- test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
+++ test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class moneypunct_byname<charT, International>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/date_order.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/date_order.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/date_order.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/date_order_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/date_order_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/date_order_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_date.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_date.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_date.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_date_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_date_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_date_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_time.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_time.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_time.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_time_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_time_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_time_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_year.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_year.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_year.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.get.byname/get_year_wide.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.get.byname/get_year_wide.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.get.byname/get_year_wide.pass.cpp
@@ -7,6 +7,11 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // class time_get_byname<charT, InputIterator>
Index: test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
===================================================================
--- test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
+++ test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // template <class CharT, class OutputIterator = ostreambuf_iterator<CharT> >
Index: test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/decimal_point.pass.cpp
===================================================================
--- test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/decimal_point.pass.cpp
+++ test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/decimal_point.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // template <class charT> class numpunct_byname;
Index: test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
===================================================================
--- test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
+++ test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // template <class charT> class numpunct_byname;
Index: test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
===================================================================
--- test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
+++ test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // template <class charT> class numpunct_byname;
Index: test/localization/locales/locale/locale.cons/assign.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/assign.pass.cpp
+++ test/localization/locales/locale/locale.cons/assign.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // const locale& operator=(const locale& other) throw();
Index: test/localization/locales/locale/locale.cons/char_pointer.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/char_pointer.pass.cpp
+++ test/localization/locales/locale/locale.cons/char_pointer.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // explicit locale(const char* std_name);
Index: test/localization/locales/locale/locale.cons/copy.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/copy.pass.cpp
+++ test/localization/locales/locale/locale.cons/copy.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.fr_FR.UTF-8
+
 // <locale>
 
 // locale(const locale& other) throw();
Index: test/localization/locales/locale/locale.cons/locale_char_pointer_cat.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/locale_char_pointer_cat.pass.cpp
+++ test/localization/locales/locale/locale.cons/locale_char_pointer_cat.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // locale(const locale& other, const char* std_name, category);
Index: test/localization/locales/locale/locale.cons/locale_facetptr.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/locale_facetptr.pass.cpp
+++ test/localization/locales/locale/locale.cons/locale_facetptr.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // template <class Facet> locale(const locale& other, Facet* f);
Index: test/localization/locales/locale/locale.cons/locale_locale_cat.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/locale_locale_cat.pass.cpp
+++ test/localization/locales/locale/locale.cons/locale_locale_cat.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.en_US.UTF-8
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // locale(const locale& other, const locale& one, category cats);
Index: test/localization/locales/locale/locale.cons/locale_string_cat.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/locale_string_cat.pass.cpp
+++ test/localization/locales/locale/locale.cons/locale_string_cat.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.ru_RU.UTF-8
+
 // <locale>
 
 // locale(const locale& other, const string& std_name, category cat);
Index: test/localization/locales/locale/locale.cons/string.pass.cpp
===================================================================
--- test/localization/locales/locale/locale.cons/string.pass.cpp
+++ test/localization/locales/locale/locale.cons/string.pass.cpp
@@ -7,6 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.ru_RU.UTF-8
+// REQUIRES: locale.zh_CN.UTF-8
+
 // <locale>
 
 // explicit locale(const string& std_name);
Index: test/re/re.alg/re.alg.match/basic.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.match/basic.pass.cpp
+++ test/re/re.alg/re.alg.match/basic.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.match/ecma.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.match/ecma.pass.cpp
+++ test/re/re.alg/re.alg.match/ecma.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.match/extended.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.match/extended.pass.cpp
+++ test/re/re.alg/re.alg.match/extended.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.search/awk.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.search/awk.pass.cpp
+++ test/re/re.alg/re.alg.search/awk.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.search/basic.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.search/basic.pass.cpp
+++ test/re/re.alg/re.alg.search/basic.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.search/ecma.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.search/ecma.pass.cpp
+++ test/re/re.alg/re.alg.search/ecma.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.alg/re.alg.search/extended.pass.cpp
===================================================================
--- test/re/re.alg/re.alg.search/extended.pass.cpp
+++ test/re/re.alg/re.alg.search/extended.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class BidirectionalIterator, class Allocator, class charT, class traits>
Index: test/re/re.traits/lookup_collatename.pass.cpp
===================================================================
--- test/re/re.traits/lookup_collatename.pass.cpp
+++ test/re/re.traits/lookup_collatename.pass.cpp
@@ -7,6 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class charT> struct regex_traits;
Index: test/re/re.traits/transform.pass.cpp
===================================================================
--- test/re/re.traits/transform.pass.cpp
+++ test/re/re.traits/transform.pass.cpp
@@ -8,6 +8,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class charT> struct regex_traits;
Index: test/re/re.traits/transform_primary.pass.cpp
===================================================================
--- test/re/re.traits/transform_primary.pass.cpp
+++ test/re/re.traits/transform_primary.pass.cpp
@@ -8,6 +8,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: locale.cs_CZ.ISO8859-2
+
 // <regex>
 
 // template <class charT> struct regex_traits;
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to