[libcxx] Fix XFAIL for aligned deallocation test with trunk Clang
authorLouis Dionne <ldionne@apple.com>
Mon, 26 Nov 2018 17:47:16 +0000 (17:47 +0000)
committerLouis Dionne <ldionne@apple.com>
Mon, 26 Nov 2018 17:47:16 +0000 (17:47 +0000)
The test was marked as failing whenever the deployment target was 10.12
or older, but in reality the test passes when the deployment target is
10.12 on recent Clangs. This happens because only older clangs do not
honor the -faligned-allocation flag, which disables any availability
error related to aligned allocation support, regardless of the
deployment target.

llvm-svn: 347580

libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp

index c2a9f50..863f341 100644 (file)
 // definitions, which does not yet provide aligned allocation
 // XFAIL: LIBCXX-WINDOWS-FIXME
 
-// XFAIL: with_system_cxx_lib=macosx10.12 || availability=macosx10.12
-// XFAIL: with_system_cxx_lib=macosx10.11 || availability=macosx10.11
-// XFAIL: with_system_cxx_lib=macosx10.10 || availability=macosx10.10
-// XFAIL: with_system_cxx_lib=macosx10.9 || availability=macosx10.9
-// XFAIL: with_system_cxx_lib=macosx10.8 || availability=macosx10.8
-// XFAIL: with_system_cxx_lib=macosx10.7 || availability=macosx10.7
+// Clang 10 (and older) will trigger an availability error when the deployment
+// target does not support aligned allocation, even if we pass `-faligned-allocation`.
+// XFAIL: apple-clang-10 && availability=macosx10.12
+
+// The dylib shipped with macosx10.12 does not contain the aligned allocation
+// functions, so trying to force using those with -faligned-allocation results
+// in a link error.
+// XFAIL: with_system_cxx_lib=macosx10.12
+
+// The test will fail on deployment targets that do not support sized deallocation.
+// XFAIL: availability=macosx10.11
+// XFAIL: availability=macosx10.10
+// XFAIL: availability=macosx10.9
+// XFAIL: availability=macosx10.8
+// XFAIL: availability=macosx10.7
 
 // XFAIL: sanitizer-new-delete, ubsan