From d520dfec3bc4c5cfadaecbe5c2576d4fcfd5bfff Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Fri, 5 Jun 2020 13:06:37 -0400 Subject: [PATCH] [libc++abi] Properly fix XFAILs for exception alignment Since is in the SDK, not in /usr/include, the XFAILs must be predicated on the compiler version (ideally even on the SDK version) instead of the target system version. --- .../test_exception_address_alignment.pass.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/libcxxabi/test/test_exception_address_alignment.pass.cpp b/libcxxabi/test/test_exception_address_alignment.pass.cpp index b870290a2b10..5847f23caa00 100644 --- a/libcxxabi/test/test_exception_address_alignment.pass.cpp +++ b/libcxxabi/test/test_exception_address_alignment.pass.cpp @@ -9,14 +9,13 @@ // UNSUPPORTED: no-exceptions // UNSUPPORTED: c++03 -// The system unwind.h on older OSX versions provided an incorrectly aligned -// _Unwind_Exception type. That causes these tests to fail on those platforms. -// XFAIL: macosx10.14 && libcxxabi-has-system-unwinder -// XFAIL: macosx10.13 && libcxxabi-has-system-unwinder -// XFAIL: macosx10.12 && libcxxabi-has-system-unwinder -// XFAIL: macosx10.11 && libcxxabi-has-system-unwinder -// XFAIL: macosx10.10 && libcxxabi-has-system-unwinder -// XFAIL: macosx10.9 && libcxxabi-has-system-unwinder +// The header provided in the SDK of older Xcodes used to provide +// an incorrectly aligned _Unwind_Exception type. That causes these tests to +// fail with those SDKs. Note that we use the AppleClang version as a cheap +// proxy for the SDK version. +// XFAIL: apple-clang-11 && libcxxabi-has-system-unwinder +// XFAIL: apple-clang-10 && libcxxabi-has-system-unwinder +// XFAIL: apple-clang-9 && libcxxabi-has-system-unwinder // Test that the address of the exception object is properly aligned as required // by the relevant ABI