From ca2ab4f657cfe0c4748baafc7fb4035f0a5fd958 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Wed, 12 Oct 2016 20:26:47 +0000 Subject: Disable trivial pair copy/move tests when unsupported Summary: On FreeBSD, for ABI compatibility reasons, the pair trivial copy constructor is disabled, using the aptly-named `_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR` define. Disable the related tests when this define is on, so they don't fail unexpectedly. Reviewers: emaste, rsmith, theraven, EricWF Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D25449 llvm-svn: 284047 --- .../utilities/utility/pairs/pairs.pair/trivial_copy_move.pass.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'libcxx/test/std/utilities') diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/trivial_copy_move.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/trivial_copy_move.pass.cpp index 53cf56700df..200f044c635 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/trivial_copy_move.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/trivial_copy_move.pass.cpp @@ -32,19 +32,25 @@ int main() typedef std::pair P; { static_assert(std::is_copy_constructible

::value, ""); +#if !defined(_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR) static_assert(std::is_trivially_copy_constructible

::value, ""); +#endif } #if TEST_STD_VER >= 11 { static_assert(std::is_move_constructible

::value, ""); +#if !defined(_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR) static_assert(std::is_trivially_move_constructible

::value, ""); +#endif } { using P1 = std::pair; static_assert(!std::is_copy_constructible::value, ""); static_assert(!std::is_trivially_copy_constructible::value, ""); static_assert(std::is_move_constructible::value, ""); +#if !defined(_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR) static_assert(std::is_trivially_move_constructible::value, ""); +#endif } #endif } -- cgit v1.2.3