summaryrefslogtreecommitdiffstats
path: root/libcxx
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2014-10-23 21:17:36 +0000
committerEric Fiselier <eric@efcs.ca>2014-10-23 21:17:36 +0000
commite608aed22b0527349b8e623cbcc6b76d99cd0aec (patch)
tree37e87ef3dbca62d5a777596d50f3706345ecae4a /libcxx
parent249d639786440747685b00e1a06ed1dcd69d052c (diff)
downloadbcm5719-llvm-e608aed22b0527349b8e623cbcc6b76d99cd0aec.tar.gz
bcm5719-llvm-e608aed22b0527349b8e623cbcc6b76d99cd0aec.zip
[libcxx] XFAIL all currently failing libc++ tests for linux.
Summary: Pretty please? We now have a significant number of builders that test libc++. I really want those builders to be green. Most of these failures are due to differences in locale data, including those in regex. I will continue working on fixing the locale and regex tests but there is no consensus on what the correct direction to go. Since the builders display a list of XFAIL tests they are by no means hidden. It just means they are expected failures. Now unexpected failures won't get mixed in with well known and expected failures. Reviewers: mclow.lists, jroelofs, danalbert Reviewed By: danalbert Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D5941 llvm-svn: 220512
Diffstat (limited to 'libcxx')
-rw-r--r--libcxx/test/localization/locale.categories/category.collate/locale.collate.byname/compare.pass.cpp5
-rw-r--r--libcxx/test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp6
-rw-r--r--libcxx/test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp3
-rw-r--r--libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.match/basic.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.match/ecma.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.match/extended.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.search/awk.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.search/ecma.pass.cpp3
-rw-r--r--libcxx/test/re/re.alg/re.alg.search/extended.pass.cpp3
-rw-r--r--libcxx/test/re/re.traits/lookup_collatename.pass.cpp3
-rw-r--r--libcxx/test/re/re.traits/translate_nocase.pass.cpp3
22 files changed, 71 insertions, 0 deletions
diff --git a/libcxx/test/localization/locale.categories/category.collate/locale.collate.byname/compare.pass.cpp b/libcxx/test/localization/locale.categories/category.collate/locale.collate.byname/compare.pass.cpp
index d64412521b7..69af9ac1b7b 100644
--- a/libcxx/test/localization/locale.categories/category.collate/locale.collate.byname/compare.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.collate/locale.collate.byname/compare.pass.cpp
@@ -18,6 +18,11 @@
// has any difference from "C" collation. But I do believe I'm picking
// up the OS's collation files.
+// TODO investigation needed.
+// Glibc seems to collate files differently from the way Apple's C library does
+// it.
+// XFAIL: linux-gnu
+
#include <locale>
#include <string>
#include <cassert>
diff --git a/libcxx/test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp b/libcxx/test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
index 374443a2a9e..07a33f7663b 100644
--- a/libcxx/test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_zh_CN.pass.cpp
@@ -16,6 +16,9 @@
// iter_type get(iter_type b, iter_type e, bool intl, ios_base& iob,
// ios_base::iostate& err, long double& v) const;
+// TODO For zh_CN GLIBC puts the negative sign after the currency symbol.
+// XFAIL: linux-gnu
+
#include <locale>
#include <ios>
#include <streambuf>
diff --git a/libcxx/test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp b/libcxx/test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
index 242701e26d7..633e1885e71 100644
--- a/libcxx/test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_zh_CN.pass.cpp
@@ -16,6 +16,9 @@
// iter_type put(iter_type s, bool intl, ios_base& f, char_type fill,
// long double units) const;
+// TODO For zh_CN GLIBC puts the negative sign after the currency symbol.
+// XFAIL: linux-gnu
+
#include <locale>
#include <ios>
#include <streambuf>
diff --git a/libcxx/test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp b/libcxx/test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
index b7e16c6af8e..a8782832de5 100644
--- a/libcxx/test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.monetary/locale.moneypunct.byname/thousands_sep.pass.cpp
@@ -18,6 +18,12 @@
// charT thousands_sep() const;
+// Failure related to GLIBC's use of U00A0 as mon_thousands_sep
+// and U002E as mon_decimal_point.
+// TODO: U00A0 should be investigated.
+// Possibly related to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=16006
+// XFAIL: linux-gnu
+
#include <locale>
#include <limits>
#include <cassert>
diff --git a/libcxx/test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp b/libcxx/test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
index 2010dca4c61..935961257ef 100644
--- a/libcxx/test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
@@ -13,6 +13,9 @@
// iter_type put(iter_type s, ios_base& iob, char_type fill, long double v) const;
+// TODO GLIBC uses a different string for positive and negative NAN numbers.
+// XFAIL: linux-gnu
+
#include <locale>
#include <ios>
#include <cassert>
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
index 536859e933b..72b63278d71 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one.pass.cpp
@@ -19,6 +19,9 @@
// iter_type get(iter_type s, iter_type end, ios_base& f,
// ios_base::iostate& err, tm *t, char format, char modifier = 0) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
index 36c8a8e54ce..ae8bce22445 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_one_wide.pass.cpp
@@ -19,6 +19,9 @@
// iter_type get(iter_type s, iter_type end, ios_base& f,
// ios_base::iostate& err, tm *t, char format, char modifier = 0) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
index db070be90ab..09055add75a 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday.pass.cpp
@@ -20,6 +20,9 @@
// get_weekday(iter_type s, iter_type end, ios_base& str,
// ios_base::iostate& err, tm* t) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
index ac607bacce2..31135a34943 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.get.byname/get_weekday_wide.pass.cpp
@@ -20,6 +20,9 @@
// get_weekday(iter_type s, iter_type end, ios_base& str,
// ios_base::iostate& err, tm* t) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
index ff3bb823a30..3e7538d6625 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.put.byname/put1.pass.cpp
@@ -24,6 +24,9 @@
// ~time_put_byname();
// };
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp b/libcxx/test/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp
index 577655f7263..427d7c5515f 100644
--- a/libcxx/test/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp
+++ b/libcxx/test/localization/locale.categories/category.time/locale.time.put/locale.time.put.members/put2.pass.cpp
@@ -14,6 +14,9 @@
// iter_type put(iter_type s, ios_base& str, char_type fill, const tm* t,
// char format, char modifier = 0) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
#include "test_iterators.h"
diff --git a/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp b/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
index b49eca487fa..d5112a9508b 100644
--- a/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
+++ b/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/grouping.pass.cpp
@@ -16,6 +16,9 @@
// string grouping() const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
diff --git a/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp b/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
index 80b440ac930..b1bd03ff736 100644
--- a/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
+++ b/libcxx/test/localization/locale.categories/facet.numpunct/locale.numpunct.byname/thousands_sep.pass.cpp
@@ -16,6 +16,9 @@
// char_type thousands_sep() const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <locale>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.match/basic.pass.cpp b/libcxx/test/re/re.alg/re.alg.match/basic.pass.cpp
index d63817d03e6..4139cea35f8 100644
--- a/libcxx/test/re/re.alg/re.alg.match/basic.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.match/basic.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.match/ecma.pass.cpp b/libcxx/test/re/re.alg/re.alg.match/ecma.pass.cpp
index 67df410282a..38540560452 100644
--- a/libcxx/test/re/re.alg/re.alg.match/ecma.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.match/ecma.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.match/extended.pass.cpp b/libcxx/test/re/re.alg/re.alg.match/extended.pass.cpp
index 733c16ec432..c54825de584 100644
--- a/libcxx/test/re/re.alg/re.alg.match/extended.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.match/extended.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.search/awk.pass.cpp b/libcxx/test/re/re.alg/re.alg.search/awk.pass.cpp
index 74c25c1a53d..521e98b3a88 100644
--- a/libcxx/test/re/re.alg/re.alg.search/awk.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.search/awk.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp b/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp
index c8a5051d585..838294e984c 100644
--- a/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.search/ecma.pass.cpp b/libcxx/test/re/re.alg/re.alg.search/ecma.pass.cpp
index 965c29d6cf6..2796850fbd5 100644
--- a/libcxx/test/re/re.alg/re.alg.search/ecma.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.search/ecma.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.alg/re.alg.search/extended.pass.cpp b/libcxx/test/re/re.alg/re.alg.search/extended.pass.cpp
index c181cff4728..a8a121bdd45 100644
--- a/libcxx/test/re/re.alg/re.alg.search/extended.pass.cpp
+++ b/libcxx/test/re/re.alg/re.alg.search/extended.pass.cpp
@@ -18,6 +18,9 @@
// const basic_regex<charT, traits>& e,
// regex_constants::match_flag_type flags = regex_constants::match_default);
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
diff --git a/libcxx/test/re/re.traits/lookup_collatename.pass.cpp b/libcxx/test/re/re.traits/lookup_collatename.pass.cpp
index 049246ed1b1..d495f8aaf07 100644
--- a/libcxx/test/re/re.traits/lookup_collatename.pass.cpp
+++ b/libcxx/test/re/re.traits/lookup_collatename.pass.cpp
@@ -17,6 +17,9 @@
// string_type
// lookup_collatename(ForwardIterator first, ForwardIterator last) const;
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <iterator>
#include <cassert>
diff --git a/libcxx/test/re/re.traits/translate_nocase.pass.cpp b/libcxx/test/re/re.traits/translate_nocase.pass.cpp
index 5e042aead86..37d277450a7 100644
--- a/libcxx/test/re/re.traits/translate_nocase.pass.cpp
+++ b/libcxx/test/re/re.traits/translate_nocase.pass.cpp
@@ -17,6 +17,9 @@
// XFAIL: with_system_lib=x86_64-apple-darwin11
// XFAIL: with_system_lib=x86_64-apple-darwin12
+// TODO: investigation needed
+// XFAIL: linux-gnu
+
#include <regex>
#include <cassert>
OpenPOWER on IntegriCloud