From f3486db1f73773cf2e53c24837f2a0a24a302d2c Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Thu, 21 Mar 2019 15:37:11 +0000 Subject: [PATCH] [libc++] Mark bad_any_cast tests as unsupported when the dylib doesn't support bad_any_cast With the latest compiler fix to availability, some availability failures that didn't trigger before now trigger. llvm-svn: 356678 --- .../any_cast_request_invalid_value_category.fail.cpp | 5 +---- .../any/any.nonmembers/any.cast/const_correctness.fail.cpp | 5 +---- .../any.nonmembers/any.cast/not_copy_constructible.fail.cpp | 5 +---- 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.fail.cpp b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.fail.cpp index 396d994d22dd..07d4e3a8f3fb 100644 --- a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.fail.cpp +++ b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.fail.cpp @@ -7,6 +7,7 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: dylib-has-no-bad_any_cast // @@ -21,10 +22,6 @@ struct TestType {}; using std::any; using std::any_cast; -// On platforms that do not support any_cast, an additional availability error -// is triggered by these tests. -// expected-error@any_cast_request_invalid_value_category.fail.cpp:* 0+ {{call to unavailable function 'any_cast': introduced in macOS 10.14}} - void test_const_lvalue_cast_request_non_const_lvalue() { const any a; diff --git a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.fail.cpp b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.fail.cpp index 8669de4fddb1..720b15a98d9c 100644 --- a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.fail.cpp +++ b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.fail.cpp @@ -7,6 +7,7 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: dylib-has-no-bad_any_cast // @@ -20,10 +21,6 @@ struct TestType {}; struct TestType2 {}; -// On platforms that do not support any_cast, an additional availability error -// is triggered by these tests. -// expected-error@const_correctness.fail.cpp:* 0+ {{call to unavailable function 'any_cast': introduced in macOS 10.14}} - int main(int, char**) { using std::any; diff --git a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.fail.cpp b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.fail.cpp index 97f1d9795bc0..3c267f7b8551 100644 --- a/libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.fail.cpp +++ b/libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.fail.cpp @@ -7,6 +7,7 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: dylib-has-no-bad_any_cast // @@ -39,10 +40,6 @@ struct no_move { no_move(no_move const&) {} }; -// On platforms that do not support any_cast, an additional availability error -// is triggered by these tests. -// expected-error@not_copy_constructible.fail.cpp:* 0+ {{call to unavailable function 'any_cast': introduced in macOS 10.14}} - int main(int, char**) { any a; // expected-error-re@any:* {{static_assert failed{{.*}} "ValueType is required to be an lvalue reference or a CopyConstructible type"}}