Index: libcxx/trunk/include/__config =================================================================== --- libcxx/trunk/include/__config +++ libcxx/trunk/include/__config @@ -1307,9 +1307,16 @@ __attribute__((availability(ios,strict,introduced=10.0))) \ __attribute__((availability(tvos,strict,introduced=10.0))) \ __attribute__((availability(watchos,strict,introduced=3.0))) -# define _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS __attribute__((unavailable)) +# define _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS \ + __attribute__((availability(macosx,strict,introduced=10.14))) \ + __attribute__((availability(ios,strict,introduced=12.0))) \ + __attribute__((availability(tvos,strict,introduced=12.0))) \ + __attribute__((availability(watchos,strict,introduced=5.0))) +# define _LIBCPP_AVAILABILITY_BAD_VARIANT_ACCESS \ + _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS # define _LIBCPP_AVAILABILITY_BAD_ARRAY_LENGTH __attribute__((unavailable)) -# define _LIBCPP_AVAILABILITY_BAD_ANY_CAST __attribute__((unavailable)) +# define _LIBCPP_AVAILABILITY_BAD_ANY_CAST \ + _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS # define _LIBCPP_AVAILABILITY_UNCAUGHT_EXCEPTIONS \ __attribute__((availability(macosx,strict,introduced=10.12))) \ __attribute__((availability(ios,strict,introduced=10.0))) \ @@ -1333,6 +1340,7 @@ __attribute__((availability(ios,strict,introduced=7.0))) #else # define _LIBCPP_AVAILABILITY_SHARED_MUTEX +# define _LIBCPP_AVAILABILITY_BAD_VARIANT_ACCESS # define _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS # define _LIBCPP_AVAILABILITY_BAD_ARRAY_LENGTH # define _LIBCPP_AVAILABILITY_BAD_ANY_CAST @@ -1349,11 +1357,17 @@ # define _LIBCPP_AVAILABILITY_DYNARRAY # define _LIBCPP_AVAILABILITY_FUTURE # define _LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST +# define _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS +# define _LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS #else # define _LIBCPP_AVAILABILITY_DYNARRAY _LIBCPP_AVAILABILITY_BAD_ARRAY_LENGTH # define _LIBCPP_AVAILABILITY_FUTURE _LIBCPP_AVAILABILITY_FUTURE_ERROR # define _LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST \ _LIBCPP_AVAILABILITY_BAD_ANY_CAST +# define _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS \ + _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS +# define _LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS \ + _LIBCPP_AVAILABILITY_BAD_VARIANT_ACCESS #endif // Availability of stream API in the dylib got dropped and re-added. The Index: libcxx/trunk/include/any =================================================================== --- libcxx/trunk/include/any +++ libcxx/trunk/include/any @@ -94,7 +94,7 @@ #endif namespace std { -class _LIBCPP_EXCEPTION_ABI bad_any_cast : public bad_cast +class _LIBCPP_EXCEPTION_ABI _LIBCPP_AVAILABILITY_BAD_ANY_CAST bad_any_cast : public bad_cast { public: virtual const char* what() const _NOEXCEPT; @@ -106,6 +106,7 @@ #if _LIBCPP_STD_VER > 14 _LIBCPP_NORETURN inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST void __throw_bad_any_cast() { #ifndef _LIBCPP_NO_EXCEPTIONS @@ -577,6 +578,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST _ValueType any_cast(any const & __v) { using _RawValueType = __uncvref_t<_ValueType>; @@ -591,6 +593,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST _ValueType any_cast(any & __v) { using _RawValueType = __uncvref_t<_ValueType>; @@ -605,6 +608,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST _ValueType any_cast(any && __v) { using _RawValueType = __uncvref_t<_ValueType>; Index: libcxx/trunk/include/optional =================================================================== --- libcxx/trunk/include/optional +++ libcxx/trunk/include/optional @@ -169,7 +169,7 @@ namespace std // purposefully not using versioning namespace { -class _LIBCPP_EXCEPTION_ABI bad_optional_access +class _LIBCPP_EXCEPTION_ABI _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS bad_optional_access : public exception { public: @@ -186,6 +186,7 @@ _LIBCPP_NORETURN inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS void __throw_bad_optional_access() { #ifndef _LIBCPP_NO_EXCEPTIONS throw bad_optional_access(); @@ -933,6 +934,7 @@ using __base::__get; _LIBCPP_INLINE_VISIBILITY + _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS constexpr value_type const& value() const& { if (!this->has_value()) @@ -941,6 +943,7 @@ } _LIBCPP_INLINE_VISIBILITY + _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS constexpr value_type& value() & { if (!this->has_value()) @@ -949,6 +952,7 @@ } _LIBCPP_INLINE_VISIBILITY + _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS constexpr value_type&& value() && { if (!this->has_value()) @@ -957,6 +961,7 @@ } _LIBCPP_INLINE_VISIBILITY + _LIBCPP_AVAILABILITY_THROW_BAD_OPTIONAL_ACCESS constexpr value_type const&& value() const&& { if (!this->has_value()) Index: libcxx/trunk/include/variant =================================================================== --- libcxx/trunk/include/variant +++ libcxx/trunk/include/variant @@ -219,7 +219,7 @@ namespace std { // explicitly not using versioning namespace -class _LIBCPP_EXCEPTION_ABI bad_variant_access : public exception { +class _LIBCPP_EXCEPTION_ABI _LIBCPP_AVAILABILITY_BAD_VARIANT_ACCESS bad_variant_access : public exception { public: virtual const char* what() const _NOEXCEPT; }; @@ -232,6 +232,7 @@ _LIBCPP_NORETURN inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS void __throw_bad_variant_access() { #ifndef _LIBCPP_NO_EXCEPTIONS throw bad_variant_access(); @@ -1321,6 +1322,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr auto&& __generic_get(_Vp&& __v) { using __variant_detail::__access::__variant; if (!__holds_alternative<_Ip>(__v)) { @@ -1331,6 +1333,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr variant_alternative_t<_Ip, variant<_Types...>>& get( variant<_Types...>& __v) { static_assert(_Ip < sizeof...(_Types)); @@ -1340,6 +1343,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr variant_alternative_t<_Ip, variant<_Types...>>&& get( variant<_Types...>&& __v) { static_assert(_Ip < sizeof...(_Types)); @@ -1349,6 +1353,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr const variant_alternative_t<_Ip, variant<_Types...>>& get( const variant<_Types...>& __v) { static_assert(_Ip < sizeof...(_Types)); @@ -1358,6 +1363,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr const variant_alternative_t<_Ip, variant<_Types...>>&& get( const variant<_Types...>&& __v) { static_assert(_Ip < sizeof...(_Types)); @@ -1367,6 +1373,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr _Tp& get(variant<_Types...>& __v) { static_assert(!is_void_v<_Tp>); return _VSTD::get<__find_exactly_one_t<_Tp, _Types...>::value>(__v); @@ -1374,6 +1381,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr _Tp&& get(variant<_Types...>&& __v) { static_assert(!is_void_v<_Tp>); return _VSTD::get<__find_exactly_one_t<_Tp, _Types...>::value>( @@ -1382,6 +1390,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr const _Tp& get(const variant<_Types...>& __v) { static_assert(!is_void_v<_Tp>); return _VSTD::get<__find_exactly_one_t<_Tp, _Types...>::value>(__v); @@ -1389,6 +1398,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr const _Tp&& get(const variant<_Types...>&& __v) { static_assert(!is_void_v<_Tp>); return _VSTD::get<__find_exactly_one_t<_Tp, _Types...>::value>( @@ -1521,6 +1531,7 @@ template inline _LIBCPP_INLINE_VISIBILITY +_LIBCPP_AVAILABILITY_THROW_BAD_VARIANT_ACCESS constexpr decltype(auto) visit(_Visitor&& __visitor, _Vs&&... __vs) { using __variant_detail::__visitation::__variant; bool __results[] = {__vs.valueless_by_exception()...}; Index: libcxx/trunk/test/std/utilities/any/any.class/any.assign/copy.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.assign/copy.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.assign/copy.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.7 +// XFAIL: availability=macosx10.8 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.assign/move.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.assign/move.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.assign/move.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.assign/value.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.assign/value.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.assign/value.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.cons/copy.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.cons/copy.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.cons/copy.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.cons/in_place_type.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.cons/in_place_type.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.cons/in_place_type.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.cons/move.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.cons/move.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.cons/move.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.cons/value.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.cons/value.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.cons/value.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/reset.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/reset.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/reset.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/swap.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/swap.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.class/any.modifiers/swap.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_reference.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_reference.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.nonmembers/any.cast/any_cast_reference.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.nonmembers/make_any.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.nonmembers/make_any.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.nonmembers/make_any.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/any/any.nonmembers/swap.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/any/any.nonmembers/swap.pass.cpp +++ libcxx/trunk/test/std/utilities/any/any.nonmembers/swap.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/default.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/default.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/default.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.7 +// XFAIL: availability=macosx10.8 // Index: libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/derive.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/derive.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.bad_optional_access/derive.pass.cpp @@ -9,6 +9,14 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 +// XFAIL: availability_markup=macosx10.13 +// XFAIL: availability_markup=macosx10.12 +// XFAIL: availability_markup=macosx10.11 +// XFAIL: availability_markup=macosx10.10 +// XFAIL: availability_markup=macosx10.9 +// XFAIL: availability_markup=macosx10.8 +// XFAIL: availability_markup=macosx10.7 + // // class bad_optional_access : public exception Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp @@ -9,12 +9,13 @@ // // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/const_T.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/const_T.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/const_T.pass.cpp @@ -9,12 +9,13 @@ // // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/move.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/move.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/move.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/rvalue_T.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/rvalue_T.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/rvalue_T.pass.cpp @@ -9,12 +9,13 @@ // // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp @@ -9,12 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_rvalue.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_rvalue.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.observe/value_rvalue.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 // -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // constexpr T& optional::value() &&; Index: libcxx/trunk/test/std/utilities/optional/optional.specalg/make_optional.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/optional/optional.specalg/make_optional.pass.cpp +++ libcxx/trunk/test/std/utilities/optional/optional.specalg/make_optional.pass.cpp @@ -10,6 +10,14 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 // +// XFAIL: availability_markup=macosx10.13 +// XFAIL: availability_markup=macosx10.12 +// XFAIL: availability_markup=macosx10.11 +// XFAIL: availability_markup=macosx10.10 +// XFAIL: availability_markup=macosx10.9 +// XFAIL: availability_markup=macosx10.8 +// XFAIL: availability_markup=macosx10.7 + // template // constexpr optional> make_optional(T&& v); Index: libcxx/trunk/test/std/utilities/variant/variant.bad_variant_access/bad_variant_access.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.bad_variant_access/bad_variant_access.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.bad_variant_access/bad_variant_access.pass.cpp @@ -10,12 +10,14 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 + // Index: libcxx/trunk/test/std/utilities/variant/variant.get/get_index.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.get/get_index.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.get/get_index.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.get/get_type.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.get/get_type.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.get/get_type.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/copy.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/copy.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/copy.pass.cpp @@ -14,12 +14,13 @@ // XFAIL: clang-3.5, clang-3.6, clang-3.7, clang-3.8 // XFAIL: apple-clang-6, apple-clang-7, apple-clang-8.0 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/move.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/move.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.assign/move.pass.cpp @@ -14,12 +14,14 @@ // XFAIL: clang-3.5, clang-3.6, clang-3.7, clang-3.8 // XFAIL: apple-clang-6, apple-clang-7, apple-clang-8.0 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 + // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp @@ -12,6 +12,14 @@ // +// XFAIL: availability_markup=macosx10.13 +// XFAIL: availability_markup=macosx10.12 +// XFAIL: availability_markup=macosx10.11 +// XFAIL: availability_markup=macosx10.10 +// XFAIL: availability_markup=macosx10.9 +// XFAIL: availability_markup=macosx10.8 +// XFAIL: availability_markup=macosx10.7 + // template class variant; // template constexpr variant(T&&) noexcept(see below); Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/copy.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/copy.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/copy.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_init_list_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_init_list_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_index_init_list_args.pass.cpp @@ -12,6 +12,14 @@ // +// XFAIL: availability_markup=macosx10.13 +// XFAIL: availability_markup=macosx10.12 +// XFAIL: availability_markup=macosx10.11 +// XFAIL: availability_markup=macosx10.10 +// XFAIL: availability_markup=macosx10.9 +// XFAIL: availability_markup=macosx10.8 +// XFAIL: availability_markup=macosx10.7 + // template class variant; // template Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_init_list_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_init_list_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/in_place_type_init_list_args.pass.cpp @@ -12,6 +12,14 @@ // +// XFAIL: availability_markup=macosx10.13 +// XFAIL: availability_markup=macosx10.12 +// XFAIL: availability_markup=macosx10.11 +// XFAIL: availability_markup=macosx10.10 +// XFAIL: availability_markup=macosx10.9 +// XFAIL: availability_markup=macosx10.8 +// XFAIL: availability_markup=macosx10.7 + // template class variant; // template Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/move.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/move.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.ctor/move.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_init_list_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_init_list_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_init_list_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_init_list_args.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_init_list_args.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_init_list_args.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.variant/variant.swap/swap.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.variant/variant.swap/swap.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.variant/variant.swap/swap.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // Index: libcxx/trunk/test/std/utilities/variant/variant.visit/visit.pass.cpp =================================================================== --- libcxx/trunk/test/std/utilities/variant/variant.visit/visit.pass.cpp +++ libcxx/trunk/test/std/utilities/variant/variant.visit/visit.pass.cpp @@ -10,12 +10,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// XFAIL: with_system_cxx_lib=macosx10.12 -// XFAIL: with_system_cxx_lib=macosx10.11 -// XFAIL: with_system_cxx_lib=macosx10.10 -// XFAIL: with_system_cxx_lib=macosx10.9 -// XFAIL: with_system_cxx_lib=macosx10.7 -// XFAIL: with_system_cxx_lib=macosx10.8 +// XFAIL: availability=macosx10.13 +// XFAIL: availability=macosx10.12 +// XFAIL: availability=macosx10.11 +// XFAIL: availability=macosx10.10 +// XFAIL: availability=macosx10.9 +// XFAIL: availability=macosx10.8 +// XFAIL: availability=macosx10.7 // // template Index: libcxx/trunk/test/support/any_helpers.h =================================================================== --- libcxx/trunk/test/support/any_helpers.h +++ libcxx/trunk/test/support/any_helpers.h @@ -68,6 +68,7 @@ // Assert that an 'any' object stores the specified 'Type' and 'value'. template std::enable_if_t(0)> +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST assertContains(std::any const& a, int value) { assert(a.has_value()); assert(containsType(a)); @@ -76,6 +77,7 @@ template std::enable_if_t(0)> +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST assertContains(std::any const& a, Value value) { assert(a.has_value()); assert(containsType(a)); @@ -86,6 +88,7 @@ // Modify the value of a "test type" stored within an any to the specified // 'value'. template +_LIBCPP_AVAILABILITY_THROW_BAD_ANY_CAST void modifyValue(std::any& a, int value) { using namespace std; using namespace std::experimental;