Avoid testing for libc++ internal macros after D99834
authorDimitry Andric <dimitry@andric.com>
Wed, 7 Apr 2021 16:51:53 +0000 (18:51 +0200)
committerDimitry Andric <dimitry@andric.com>
Wed, 7 Apr 2021 16:52:41 +0000 (18:52 +0200)
As D99834 was meant specifically for FreeBSD, which still uses the older
non-trivial std::pair copy constructors, test for `__FreeBSD__` instead
of relying on a macro which is an internal detail of libc++.

Noted by Louis Dionne.

llvm/unittests/Support/TypeTraitsTest.cpp

index cd78f09..bd21343 100644 (file)
@@ -110,7 +110,7 @@ TEST(Triviality, ADT) {
   TrivialityTester<llvm::SmallString<8>, false, false>();
 
   TrivialityTester<std::function<int()>, false, false>();
-#if !defined(_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR)
+#if !defined(__FreeBSD__)
   TrivialityTester<std::pair<int, bool>, true, true>();
 #endif
   TrivialityTester<llvm::unique_function<int()>, false, false>();