OSDN Git Service

[Support] This sanity check in the test only works with certain versions
authorChandler Carruth <chandlerc@gmail.com>
Tue, 3 Jul 2018 07:51:01 +0000 (07:51 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Tue, 3 Jul 2018 07:51:01 +0000 (07:51 +0000)
of libstdc++, not just certain versions of GCC. The original macros
broke when using Clang + libstdc++4.9 sadly.

Sadly, testing for versions of libstdc++ has been extremely problematic
in the past, so I'm just narrowing this down to Windows and when using
libc++ as that seems at least very unlikely to keep build bots broken.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@336174 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/Support/TypeTraitsTest.cpp

index 06ff9cc..2f7340d 100644 (file)
@@ -26,7 +26,7 @@ void TrivialityTester() {
                     IsTriviallyMoveConstructible,
                 "Mismatch in expected trivial move construction!");
 
-#if __clang__ || _MSC_VER || __GNUC__ > 5
+#if defined(_LIBCPP_VERSION) || defined(_MSC_VER)
   // On compilers with support for the standard traits, make sure they agree.
   static_assert(std::is_trivially_copy_constructible<T>::value ==
                     IsTriviallyCopyConstructible,