-
Notifications
You must be signed in to change notification settings - Fork 13.6k
[libc++][test] extend -linux-gnu XFAIL to cover all of the -linux targets #129140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…gets The default triple of Amazon Linux on AArch64 is aarch64-amazon-linux, see issue highlighded by PR llvm#109263, somewhat serious linker issues are encountered if any other triple is being used. Unfortunately, this makes XFAIL lines like `XFAIL: target=aarch64{{.*}}-linux-gnu` ineffective, making it impossible to complete all of the check-cxx without failures.
@llvm/pr-subscribers-libcxx Author: Paul Osmialowski (pawosm-arm) ChangesThe default triple of Amazon Linux on AArch64 is aarch64-amazon-linux, see issue highlighded by PR #109263, somewhat serious linker issues are encountered if any other triple is being used. Unfortunately, this makes XFAIL lines like Full diff: https://github.com/llvm/llvm-project/pull/129140.diff 10 Files Affected:
diff --git a/libcxx/test/std/input.output/iostream.format/std.manip/setfill_wchar_max.pass.cpp b/libcxx/test/std/input.output/iostream.format/std.manip/setfill_wchar_max.pass.cpp
index 9d4126153cc23..82842a75827ac 100644
--- a/libcxx/test/std/input.output/iostream.format/std.manip/setfill_wchar_max.pass.cpp
+++ b/libcxx/test/std/input.output/iostream.format/std.manip/setfill_wchar_max.pass.cpp
@@ -16,7 +16,7 @@
// XFAIL: target={{.*}}-windows{{.*}} && libcpp-abi-version=1
// XFAIL: target=armv{{7|8}}{{l?}}{{.*}}-linux-gnueabihf && libcpp-abi-version=1
-// XFAIL: target=aarch64{{.*}}-linux-gnu && libcpp-abi-version=1
+// XFAIL: target=aarch64{{.*}}-linux{{.*}} && libcpp-abi-version=1
#include <iomanip>
#include <ostream>
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp
index 57b8c13aa3c14..879597b2f80fd 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp
@@ -18,7 +18,7 @@
// TODO: investigation needed
// TODO(netbsd): incomplete support for locales
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, netbsd, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, netbsd, freebsd
// REQUIRES: locale.cs_CZ.ISO8859-2
#include <regex>
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
index 430d35fe739e5..59fb1c48e15d3 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp
index b512fa9b5fcf8..0a966759eac3b 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp
index 472dc19680263..87ff1e5b6ef12 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp
index 9125df404b1de..c4b211e613bec 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp
index f85b6a40ce129..56cf2e6a61ff3 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp
index aa9441cb3e58f..4655a5c2e0ee6 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp
index 9746e45f29da5..7bc8a537ca228 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp
@@ -22,7 +22,7 @@
// regex_constants::match_flag_type flags = regex_constants::match_default);
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}, freebsd
+// XFAIL: target={{.*}}-linux{{.*}}, freebsd
#include <regex>
#include <cassert>
diff --git a/libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp b/libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp
index 178979d5b9ce8..3cbbaef9c81b5 100644
--- a/libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp
+++ b/libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp
@@ -23,7 +23,7 @@
// lookup_collatename(ForwardIterator first, ForwardIterator last) const;
// TODO: investigation needed
-// XFAIL: target={{.*}}-linux-gnu{{.*}}
+// XFAIL: target={{.*}}-linux{{.*}}
#include <regex>
#include <iterator>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given that none of these have any details suggesting they pass on non-gnu systems, this seems fine.
Some of them will have been -gnu
purely because the buildbots at the time were all -gnu
(probably still are).
The failures on Windows and FreeBSD are unrelated. |
/cherry-pick c93dc58 |
/pull-request #129225 |
@pawosm-arm @DavidSpickett please wait for @llvm/reviewers-libcxx approval before landing libc++ patches. This really doesn't seem like the kind of patch that is time-sensitive. |
Yes sure, I should have made @pawosm-arm aware of that. |
I'm sorry for the confusion, this needs to be reverted (see #129271) and I'll try to prepare something afresh. |
…inux targets (llvm#129140)" The effect of this commit is too broad and may affect also those variants of Linux systems on which the affected test cases are known to pass. An alternative version of this commit will be prepared afresh. This reverts commit c93dc58.
…gets (llvm#129140) The default triple of Amazon Linux on AArch64 is aarch64-amazon-linux, see issue highlighded by PR llvm#109263, somewhat serious linker issues are encountered if any other triple is being used. Unfortunately, this makes XFAIL lines like: `XFAIL: target=aarch64{{.*}}-linux-gnu` ineffective, making it impossible to complete all of the check-cxx without failures.
I'll echo what @philnik777 said here: please don't bypass the libc++ reviewers group. I'm not too comfortable with folks who don't have a history of contributing to libc++ merging commits themselves into the codebase ( CC @tstellar FWIW, this is a great example of something where different commit access policies could be helpful. In this case, there was no intention of wrongdoing, but unclear policies around who's expected to merge something led to a small and mostly harmless, but incorrect patch being merged (since it had to be reverted). I only stumbled upon that because I Anyway, there's no harm done here but I do think this is something small and inconsequential that we can learn from in terms of setting project policies. |
…inux targets (llvm#129140)" (llvm#129271) The effect of this commit is too broad and may affect also those variants of Linux systems on which the affected test cases are known to pass. An alternative version of this commit will be prepared afresh. This reverts commit c93dc58.
The default triple of Amazon Linux on AArch64 is aarch64-amazon-linux, see issue highlighded by PR #109263, somewhat serious linker issues are encountered if any other triple is being used.
Unfortunately, this makes XFAIL lines like
XFAIL: target=aarch64{{.*}}-linux-gnu
ineffective, making it impossible to complete all of the check-cxx without failures.