-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[libc++][test] extend XFAIL clauses to cover Amazon Linux too #129377
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
@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/129377.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..b24c0b90d86f1 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
@@ -17,6 +17,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{{.*}}-amazon-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..9cc928e71d2fb 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-gnu{{.*}}, {{.*}}-amazon-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..fab56e9b98d53 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-gnu{{.*}}, {{.*}}-amazon-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..8b613ecb1c1ae 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-gnu{{.*}}, {{.*}}-amazon-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..71022a1020431 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-gnu{{.*}}, {{.*}}-amazon-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..c2c80100fc069 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-gnu{{.*}}, {{.*}}-amazon-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..5e13d535b5702 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-gnu{{.*}}, {{.*}}-amazon-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..06ee8d1ac9caf 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-gnu{{.*}}, {{.*}}-amazon-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..c93b745265e56 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-gnu{{.*}}, {{.*}}-amazon-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..e0ba4e5bfec27 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-gnu{{.*}}, {{.*}}-amazon-linux{{.*}}
#include <regex>
#include <iterator>
|
This is a fresh attempt after the unfortunate PR #129140 and this one addresses Amazon Linux specifically. |
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.
Thanks for working on this.
Do you intent to add a CI runner with Amazon Linux? Without such a runner it will be impossible to maintain these changes.
@@ -18,7 +18,7 @@ | |||
|
|||
// TODO: investigation needed | |||
// TODO(netbsd): incomplete support for locales | |||
// XFAIL: target={{.*}}-linux-gnu{{.*}}, netbsd, freebsd | |||
// XFAIL: target={{.*}}-linux-gnu{{.*}}, {{.*}}-amazon-linux{{.*}}, netbsd, freebsd |
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.
IMO having it on a separate line makes it easier to read, and avoids mistakes.
// XFAIL: target={{.*}}-linux-gnu{{.*}}, {{.*}}-amazon-linux{{.*}}, netbsd, freebsd | |
// XFAIL: target={{.*}}-linux-gnu{{.*}}, netbsd, freebsd | |
// XFAIL: target={{.*}}-amazon-linux{{.*}} |
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.
Changed according to your suggestion.
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 on Amazon Linux without failing.
ecf863f
to
009cafb
Compare
I'm merely helping our devops to handle this. In our CI, libc++ is being used for building LLVM which has binaries that don't depend on system-provided libstdc++. It's fairly easy on Ubuntus, but slightly more challenging on others. And we demand that all checks are passing after each stage. |
Thanks for the information. I don't mind too much to add some |
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.
LGTM.
The FreeBSD error is unrelated to your changes.
/cherry-pick 8f4ee42 |
Failed to create pull request for issue129377 https://github.com/llvm/llvm-project/actions/runs/13637501343 |
/pull-request #129566 |
…29377) 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 on Amazon Linux without failing. (cherry picked from commit 8f4ee42)
…29377) 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 on Amazon Linux without failing.
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 on Amazon Linux without failing.