mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-04-01 12:43:47 +00:00
[libc++] Use the stdlib=<LIB> Lit feature instead of use_system_cxx_lib
The use_system_cxx_lib Lit feature was only used for back-deployment testing. However, one immense hole in that setup was that we didn't have a proper way to test Apple's own libc++ outside of back-deployment, which was embodied by the fact that we needed to define _LIBCPP_DISABLE_AVAILABILITY when testing (see change in libcxx/utils/libcxx/test/params.py). This led to the apple-system testing configuration not checking for availability markup, which is obviously quite bad since the library we ship actually has availability markup. Using stdlib=<VENDOR>-libc++ instead to encode back-deployment restrictions on tests is simpler and it makes it possible to naturally support tests such as availability markup checking even in the tip-of-trunk Apple-libc++ configuration. Differential Revision: https://reviews.llvm.org/D146366
This commit is contained in:
parent
e64cc75681
commit
ed61d6a466
@ -11,7 +11,7 @@
|
||||
// Test exporting the symbol: "__cxa_deleted_virtual" in macosx
|
||||
// But don't expect the symbol to be exported in previous versions.
|
||||
//
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
|
||||
struct S { virtual void f() = delete; virtual ~S() {} };
|
||||
int main(int, char**) {
|
||||
|
@ -22,7 +22,7 @@
|
||||
// Reported as https://llvm.org/PR53170.
|
||||
|
||||
// reserve(n) used to shrink the string until https://llvm.org/D117332 was shipped.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
|
||||
#include <string>
|
||||
#include <stdexcept>
|
||||
|
@ -9,7 +9,7 @@
|
||||
// REQUIRES: has-unix-headers
|
||||
|
||||
// UNSUPPORTED: c++03, c++11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
// XFAIL: availability-verbose_abort-missing
|
||||
// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
|
||||
|
||||
// Construct a string_view from an invalid length
|
||||
|
@ -14,7 +14,7 @@
|
||||
// UNSUPPORTED: c++03
|
||||
|
||||
// PR30202 was fixed starting in macosx10.13.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// <condition_variable>
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
// Until 58a0a70fb2f1, this_thread::sleep_for could sometimes get interrupted
|
||||
// by signals and this test would fail spuriously. Disable the test on the
|
||||
// corresponding system libraries.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// ALLOW_RETRIES: 3
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
// Until 58a0a70fb2f1, this_thread::sleep_for misbehaves when interrupted by
|
||||
// a signal, as tested here. Disable the test on the corresponding system
|
||||
// libraries.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// ALLOW_RETRIES: 3
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
// ::aligned_alloc is provided by the C library, but it's marked as unavailable
|
||||
// until macOS 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// ::aligned_alloc is not implemented on Windows
|
||||
// XFAIL: target={{.+}}-windows-{{.+}}
|
||||
|
@ -7,7 +7,7 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: suse-linux-enterprise-server-11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// <system_error>
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
// const error_category& system_category();
|
||||
|
||||
// XFAIL: suse-linux-enterprise-server-11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
#include <system_error>
|
||||
#include <cassert>
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: c++03
|
||||
|
||||
// This test requires the dylib support introduced in D92769.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: c++03
|
||||
|
||||
// This test requires the dylib support introduced in http://llvm.org/D92769.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: c++03
|
||||
|
||||
// This test requires the dylib support introduced in http://llvm.org/D92769.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// The string reported on errors changed, which makes those tests fail when run
|
||||
// against already-released libc++'s.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.15|11.0}}
|
||||
|
||||
// <filesystem>
|
||||
|
||||
|
@ -29,9 +29,9 @@
|
||||
|
||||
// This test requires a dylib containing the fix shipped in https://reviews.llvm.org/D118134.
|
||||
// We use UNSUPPORTED instead of XFAIL because the test might not fail reliably.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx11.0
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx12.{{0|1|2}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx11.0
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx12.{{0|1|2}}
|
||||
|
||||
// Windows doesn't support the necessary APIs to mitigate this issue.
|
||||
// UNSUPPORTED: target={{.+}}-windows-{{.+}}
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// In macosx10.9 to macosx10.14, streams are provided in the dylib AND they
|
||||
// have a bug in how they handle null-termination in case of errors (see D40677).
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// In macosx10.9 to macosx10.14, streams are provided in the dylib AND they
|
||||
// have a bug in how they handle null-termination in case of errors (see D40677).
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// In macosx10.9 to macosx10.14, streams are provided in the dylib AND they
|
||||
// have a bug in how they handle null-termination in case of errors (see D40677).
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// In macosx10.9 to macosx10.14, streams are provided in the dylib AND they
|
||||
// have a bug in how they handle null-termination in case of errors (see D40677).
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// <istream>
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
// This test exposes a regression that was not fixed yet in the libc++
|
||||
// shipped with macOS 10.12, 10.13 and 10.14. See D32670 for details.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{12|13|14}}
|
||||
|
||||
#include <cassert>
|
||||
#include <cstdint>
|
||||
|
@ -6,7 +6,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.12
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.12
|
||||
|
||||
// <ostream>
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
// The dylibs shipped on macOS so far do not contain the fix for PR43300, so
|
||||
// this test fails.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
int main(int, char**)
|
||||
{
|
||||
|
@ -12,7 +12,7 @@
|
||||
// when sized deallocation is not supported, e.g., prior to C++14.
|
||||
|
||||
// UNSUPPORTED: sanitizer-new-delete
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// REQUIRES: -fsized-deallocation
|
||||
// ADDITIONAL_COMPILE_FLAGS: -fsized-deallocation
|
||||
|
@ -12,7 +12,7 @@
|
||||
// when sized deallocation is not supported, e.g., prior to C++14.
|
||||
|
||||
// UNSUPPORTED: sanitizer-new-delete
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// REQUIRES: -fsized-deallocation
|
||||
// ADDITIONAL_COMPILE_FLAGS: -fsized-deallocation, -O3
|
||||
|
@ -9,11 +9,11 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// std::uncaught_exceptions() was introduced in the dylib on Mac OS 10.12
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// However, std::uncaught_exceptions() gives the wrong answer in Mac OS 10.12
|
||||
// and 10.13, where it only gives 0 or 1. This was fixed later.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{12|13}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{12|13}}
|
||||
|
||||
// test uncaught_exceptions
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
// ::aligned_alloc is provided by the C library, but it's marked as unavailable
|
||||
// until macOS 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// ::aligned_alloc is not implemented on Windows
|
||||
// XFAIL: target={{.+}}-windows-{{.+}}
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
// ::timespec_get is provided by the C library, but it's marked as
|
||||
// unavailable until macOS 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// ::timespec_get is available starting with Android Q (API 29)
|
||||
// XFAIL: target={{.+}}-android{{(eabi)?(21|22|23|24|25|26|27|28)}}
|
||||
|
@ -14,8 +14,8 @@
|
||||
|
||||
// Before https://llvm.org/D110647, the shared library did not contain
|
||||
// std::ctype<char>::table_size, so this test fails with a link error.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{11.0|12.0|13.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{11.0|12.0|13.0}}
|
||||
|
||||
#include <locale>
|
||||
#include <cassert>
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
// This test exercises the fix for PR28704, which isn't in the dylib for
|
||||
// some systems.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
#include <locale>
|
||||
#include <ios>
|
||||
|
@ -7,11 +7,11 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// See https://llvm.org/PR20183
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// The behavior of std::random_device changed on Apple platforms with
|
||||
// https://llvm.org/D116045.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
|
||||
// UNSUPPORTED: no-random-device
|
||||
|
||||
|
@ -7,12 +7,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// UNSUPPORTED: no-exceptions
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// Prior to http://llvm.org/D123580, there was a bug with how the max_size()
|
||||
// was calculated. That was inlined into some functions in the dylib, which leads
|
||||
// to failures when running this test against an older system dylib.
|
||||
// XFAIL: use_system_cxx_lib && target=arm64-apple-macosx{{11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target=arm64-apple-macosx{{11.0|12.0}}
|
||||
|
||||
// <string>
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
// This test relies on https://llvm.org/PR45368 being fixed, which isn't in
|
||||
// older Apple dylibs
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0}}
|
||||
|
||||
#include <string>
|
||||
#include <stdexcept>
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
// There's currently no release of OS X whose dylib contains the patch for
|
||||
// PR38682. Since the fix for future<void> is in the dylib, this test may fail.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
// This test is designed to cause and allow TSAN to detect a race condition
|
||||
// in std::async, as reported in https://llvm.org/PR38682.
|
||||
|
@ -11,7 +11,7 @@
|
||||
// LWG 2056 changed the values of future_errc, so if we're using new headers
|
||||
// with an old library we'll get incorrect messages.
|
||||
//
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11}}
|
||||
|
||||
// <future>
|
||||
|
||||
|
@ -14,8 +14,8 @@
|
||||
// The fix of LWG3343 is done in the dylib. That means Apple backdeployment
|
||||
// targets remain broken. Due to the nature of the test, testing on a broken
|
||||
// system does not guarantee that the test fails, so the test can't use XFAIL.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{.+}}
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx11.{{.+}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{.+}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx11.{{.+}}
|
||||
|
||||
// This is a regression test for LWG3343.
|
||||
//
|
||||
|
@ -11,7 +11,7 @@
|
||||
// Aligned allocations are not supported on macOS < 10.13
|
||||
// Note: use 'unsupported' instead of 'xfail' to ensure
|
||||
// we won't pass prior to c++17.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
|
||||
|
||||
|
@ -108,6 +108,12 @@ function step() {
|
||||
}
|
||||
|
||||
for arch in ${architectures}; do
|
||||
# Construct the target-triple that we're testing for. Otherwise, the target triple is currently detected
|
||||
# as <arch>-apple-darwin<version> instead of <arch>-apple-macosx<version>, which trips up the test suite.
|
||||
# TODO: This shouldn't be necessary anymore if `clang -print-target-triple` behaved properly, see https://llvm.org/PR61762.
|
||||
# Then LLVM would guess the LLVM_DEFAULT_TARGET_TRIPLE properly and we wouldn't have to specify it.
|
||||
target=$(xcrun clang -arch ${arch} -xc - -### 2>&1 | grep --only-matching -E '"-triple" ".+?"' | grep --only-matching -E '"[^ ]+-apple-[^ ]+?"' | tr -d '"')
|
||||
|
||||
step "Building libc++.dylib and libc++abi.dylib for architecture ${arch}"
|
||||
mkdir -p "${build_dir}/${arch}"
|
||||
xcrun cmake -S "${llvm_root}/runtimes" \
|
||||
@ -120,7 +126,10 @@ for arch in ${architectures}; do
|
||||
-DCMAKE_INSTALL_NAME_DIR="/usr/lib" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="${arch}" \
|
||||
-DLIBCXXABI_LIBRARY_VERSION="${version}" \
|
||||
-DLIBCXX_LIBRARY_VERSION="${version}"
|
||||
-DLIBCXX_LIBRARY_VERSION="${version}" \
|
||||
-DLIBCXX_TEST_PARAMS="target_triple=${target}" \
|
||||
-DLIBCXXABI_TEST_PARAMS="target_triple=${target}" \
|
||||
-DLIBUNWIND_TEST_PARAMS="target_triple=${target}"
|
||||
|
||||
if [ "$headers_only" = true ]; then
|
||||
xcrun cmake --build "${build_dir}/${arch}" --target install-cxx-headers install-cxxabi-headers -- -v
|
||||
|
@ -490,7 +490,6 @@ apple-system-backdeployment-assertions-*)
|
||||
PARAMS+=";cxx_runtime_root=${OSX_ROOTS}/macOS/libc++/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";abi_runtime_root=${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";unwind_runtime_root=${OSX_ROOTS}/macOS/libunwind/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";use_system_cxx_lib=True"
|
||||
PARAMS+=";enable_assertions=True"
|
||||
|
||||
generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Apple.cmake" \
|
||||
@ -529,7 +528,6 @@ apple-system-backdeployment-*)
|
||||
PARAMS+=";cxx_runtime_root=${OSX_ROOTS}/macOS/libc++/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";abi_runtime_root=${OSX_ROOTS}/macOS/libc++abi/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";unwind_runtime_root=${OSX_ROOTS}/macOS/libunwind/${DEPLOYMENT_TARGET}"
|
||||
PARAMS+=";use_system_cxx_lib=True"
|
||||
|
||||
generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Apple.cmake" \
|
||||
-DLIBCXX_TEST_CONFIG="apple-libc++-backdeployment.cfg.in" \
|
||||
|
@ -321,52 +321,61 @@ DEFAULT_FEATURES += [
|
||||
]
|
||||
|
||||
# Define features for back-deployment testing.
|
||||
# These features can be used to XFAIL tests that require features in the dylib that
|
||||
# were not supported by a certain target. Vendors can tweak how those are defined
|
||||
# to match their own releases of the dylib.
|
||||
#
|
||||
# These features can be used to XFAIL tests that fail when deployed on (or compiled
|
||||
# for) an older system. For example, if a test exhibits a bug in the libc on a
|
||||
# particular system version, or if it uses a symbol that is not available on an
|
||||
# older version of the dylib, it can be marked as XFAIL with these features.
|
||||
#
|
||||
# It is sometimes useful to check that a test fails specifically when compiled for a
|
||||
# given deployment target. For example, this is the case when testing availability
|
||||
# markup, where we want to make sure that using the annotated facility on a deployment
|
||||
# target that doesn't support it will fail at compile time, not at runtime. This can
|
||||
# be achieved by creating a `.verify.cpp` test that checks for the right errors, and
|
||||
# mark that test as requiring `stdlib=<vendor>-libc++ && target=<target>`.
|
||||
DEFAULT_FEATURES += [
|
||||
# Tests that require std::to_chars(floating-point) in the built library
|
||||
Feature(name='availability-fp_to_chars-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0|13.0)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require https://wg21.link/P0482 support in the built library
|
||||
Feature(name='availability-char8_t_support-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require __libcpp_verbose_abort support in the built library
|
||||
Feature(name='availability-verbose_abort-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0|13.0)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require std::bad_variant_access in the built library
|
||||
Feature(name='availability-bad_variant_access-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require std::bad_optional_access in the built library
|
||||
Feature(name='availability-bad_optional_access-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require std::bad_any_cast in the built library
|
||||
Feature(name='availability-bad_any_cast-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require std::pmr support in the built library
|
||||
Feature(name='availability-pmr-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx{{(10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require std::filesystem support in the built library
|
||||
Feature(name='availability-filesystem-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12|13|14)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12|13|14)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require the C++20 synchronization library (P1135R6 implemented by https://llvm.org/D68480) in the built library
|
||||
Feature(name='availability-synchronization_library-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12|13|14|15)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12|13|14|15)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require support for std::shared_mutex and std::shared_timed_mutex in the built library
|
||||
Feature(name='availability-shared_mutex-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11)(.0)?}}', cfg.available_features)),
|
||||
|
||||
# Tests that require support for aligned allocation in the built library. This is about `operator new(..., std::align_val_t, ...)` specifically,
|
||||
# not other forms of aligned allocation.
|
||||
Feature(name='availability-aligned_allocation-missing',
|
||||
when=lambda cfg: BooleanExpression.evaluate('use_system_cxx_lib && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
when=lambda cfg: BooleanExpression.evaluate('stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{(9|10|11|12)(.0)?}}', cfg.available_features)),
|
||||
]
|
||||
|
@ -215,36 +215,3 @@ DEFAULT_PARAMETERS = [
|
||||
AddCompileFlag('-D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES')
|
||||
]),
|
||||
]
|
||||
|
||||
DEFAULT_PARAMETERS += [
|
||||
Parameter(name='use_system_cxx_lib', choices=[True, False], type=bool, default=False,
|
||||
help="""
|
||||
Whether the test suite is being *run* against the library shipped on the
|
||||
target triple in use, as opposed to the trunk library.
|
||||
|
||||
When vendor-specific availability annotations are enabled, we add the
|
||||
'use_system_cxx_lib' Lit feature to allow writing XFAIL or UNSUPPORTED
|
||||
markup for tests that are known to fail on a particular triple.
|
||||
|
||||
That feature can be used to XFAIL a test that fails when deployed on (or is
|
||||
compiled for) an older system. For example, if the test exhibits a bug in the
|
||||
libc on a particular system version, or if the test uses a symbol that is not
|
||||
available on an older version of the dylib, it can be marked as XFAIL with
|
||||
the above feature.
|
||||
|
||||
It is sometimes useful to check that a test fails specifically when compiled
|
||||
for a given deployment target. For example, this is the case when testing
|
||||
availability markup, where we want to make sure that using the annotated
|
||||
facility on a deployment target that doesn't support it will fail at compile
|
||||
time, not at runtime. This can be achieved by creating a `.verify.cpp` test
|
||||
that checks for the right errors, and mark that test as requiring
|
||||
`use_system_cxx_lib && target=<target>`.
|
||||
""",
|
||||
actions=lambda useSystem: [
|
||||
AddFeature('use_system_cxx_lib')
|
||||
] if useSystem else [
|
||||
# If we're testing upstream libc++, disable availability markup,
|
||||
# which is not relevant for non-shipped flavors of libc++.
|
||||
AddCompileFlag('-D_LIBCPP_DISABLE_AVAILABILITY')
|
||||
])
|
||||
]
|
||||
|
@ -14,7 +14,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// 65ace9daa360 made it in the dylib in macOS 10.11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// Support for catching a function pointer including noexcept was shipped in macOS 10.13
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// 1b00fc5d8133 made it in the dylib in macOS 10.11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// Support for catching a function pointer including noexcept was shipped in macOS 10.13
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// GCC supports noexcept function types but this test still fails.
|
||||
// This is likely a bug in their implementation. Investigation needed.
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// Catching an exception thrown as nullptr was not properly handled before
|
||||
// 2f984cab4fa7, which landed in macOS 10.13
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// 1b00fc5d8133 made it in the dylib in macOS 10.11
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10}}
|
||||
|
||||
#include <cassert>
|
||||
#include <cstdio>
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
// Catching an exception thrown as nullptr was not properly handled before
|
||||
// 2f984cab4fa7, which landed in macOS 10.13
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// UNSUPPORTED: c++03
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
@ -14,7 +14,7 @@
|
||||
// ADDITIONAL_COMPILE_FLAGS: -Wno-exceptions
|
||||
|
||||
// The fix for PR17222 made it in the dylib for macOS 10.10
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.9
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.9
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// PR41395 isn't fixed until the dylib shipped with macOS 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
#include "cxxabi.h"
|
||||
#include <new>
|
||||
|
@ -7,10 +7,10 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// PR33425 and PR33487 are not fixed until the dylib shipped with macOS 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.14
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.14
|
||||
|
||||
// PR33439 isn't fixed until the dylib shipped with macOS 10.14
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
// before macOS 10.14. The test fails on macOS 10.9 to 10.12, passes on macOS
|
||||
// 10.13 (no investigation done), and passes afterwards. Just mark all the OSes
|
||||
// before 10.14 as unsupported.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13}}
|
||||
|
||||
// Check that the pointer __cxa_allocate_exception returns is aligned to the
|
||||
// default alignment for the target architecture.
|
||||
|
@ -12,8 +12,8 @@
|
||||
// UNSUPPORTED: no-exceptions, c++03
|
||||
|
||||
// These tests fail on previously released dylibs, investigation needed.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{11.0|12.0}}
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
@ -11,8 +11,8 @@
|
||||
// UNSUPPORTED: no-exceptions, c++03
|
||||
|
||||
// These tests fail on previously released dylibs, investigation needed.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx{{11.0|12.0}}
|
||||
|
||||
#include <exception>
|
||||
#include <stdlib.h>
|
||||
|
@ -17,7 +17,7 @@
|
||||
// UNSUPPORTED: no-rtti
|
||||
|
||||
// The fix for PR25898 landed in the system dylibs in macOS 10.13
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// RUN: %{cxx} %{flags} %{compile_flags} -Wno-unreachable-code -c %s -o %t.one.o
|
||||
// RUN: %{cxx} %{flags} %{compile_flags} -Wno-unreachable-code -c %s -o %t.two.o -DTU_ONE
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
// ___cxa_throw_bad_array_new_length is re-exported from libc++ only starting
|
||||
// in macosx 10.15
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
#include <cxxabi.h>
|
||||
#include <new>
|
||||
|
@ -7,12 +7,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// The demangler does not pass all these tests with the system dylibs on macOS.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
|
||||
// https://llvm.org/PR51407 was not fixed in some previously-released
|
||||
// demanglers, which causes them to run into the infinite loop.
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// UNSUPPORTED: use_system_cxx_lib && target={{.+}}-apple-macosx11.0
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14|15}}
|
||||
// UNSUPPORTED: stdlib=apple-libc++ && target={{.+}}-apple-macosx11.0
|
||||
|
||||
#include "support/timer.h"
|
||||
#include <algorithm>
|
||||
|
@ -13,7 +13,7 @@
|
||||
// an incorrectly aligned _Unwind_Exception type on non-ARM. That causes these
|
||||
// tests to fail when running against a system libc++abi and libunwind that was
|
||||
// compiled with an incorrect definition of _Unwind_Exception.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12}}
|
||||
|
||||
// Test that the address of the exception object is properly aligned as required
|
||||
// by the relevant ABI
|
||||
|
@ -9,7 +9,7 @@
|
||||
// UNSUPPORTED: no-exceptions
|
||||
|
||||
// __cxa_uncaught_exceptions is not re-exported from libc++ until macOS 10.15.
|
||||
// XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
// XFAIL: stdlib=apple-libc++ && target={{.+}}-apple-macosx10.{{9|10|11|12|13|14}}
|
||||
|
||||
#include <cxxabi.h>
|
||||
#include <cassert>
|
||||
|
@ -54,6 +54,8 @@ config.substitutions.append(('%{exec}',
|
||||
'%{executor} --execdir %T --env DYLD_LIBRARY_PATH="%{cxx-runtime-root}:%{abi-runtime-root}:%{unwind-runtime-root}" -- '
|
||||
))
|
||||
|
||||
config.stdlib = 'apple-libc++'
|
||||
|
||||
import os, site
|
||||
import libcxx.test.params, libcxx.test.config
|
||||
libcxx.test.config.configure(
|
||||
|
@ -8,7 +8,7 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// TODO: Investigate this failure on x86_64 macOS back deployment
|
||||
// XFAIL: use_system_cxx_lib && target=x86_64-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
// XFAIL: stdlib=apple-libc++ && target=x86_64-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
|
||||
|
||||
// TODO: Figure out why this fails with Memory Sanitizer.
|
||||
// XFAIL: msan
|
||||
|
Loading…
x
Reference in New Issue
Block a user