Put MSVC back into the dumb compiler's corner.
authorBenjamin Kramer <benny.kra@googlemail.com>
Fri, 20 Feb 2015 16:35:42 +0000 (16:35 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Fri, 20 Feb 2015 16:35:42 +0000 (16:35 +0000)
It fails to compile std::trivially_copyable for forward-declared enums.

llvm-svn: 230023

llvm/include/llvm/Support/type_traits.h

index 1befe92..45465ae 100644 (file)
@@ -28,10 +28,10 @@ namespace llvm {
 /// type can be copied around with memcpy instead of running ctors etc.
 template <typename T>
 struct isPodLike {
-  // std::is_trivially copyable is available in libc++ with clang, libstdc++
-  // that comes with GCC 5 and MSVC 2013.
+  // std::is_trivially_copyable is available in libc++ with clang, libstdc++
+  // that comes with GCC 5.
 #if (__has_feature(is_trivially_copyable) && defined(_LIBCPP_VERSION)) ||      \
-    (defined(__GNUC__) && __GNUC__ >= 5) || defined(_MSC_VER)
+    (defined(__GNUC__) && __GNUC__ >= 5)
   // If the compiler supports the is_trivially_copyable trait use it, as it
   // matches the definition of isPodLike closely.
   static const bool value = std::is_trivially_copyable<T>::value;