[PATCH] D57018: Fix lvm::is_trivially_copyable portability issues

Vassil Vassilev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 27 13:59:28 PST 2020


v.g.vassilev added inline comments.
Herald added a project: LLVM.


================
Comment at: llvm/trunk/include/llvm/Support/type_traits.h:186
+#ifdef HAVE_STD_IS_TRIVIALLY_COPYABLE
+  static_assert(value == std::is_trivially_copyable<T>::value,
+                "inconsistent behavior between llvm:: and std:: implementation of is_trivially_copyable");
----------------
Hi @serge-sans-paille, we hit this assert when compiling llvm9 on windows (latest version (v16.8.2) of VS 2019):

```llvm/Support/type_traits.h(186,23): error C2338: inconsistent behavior between llvm:: and std:: implementation of is_trivially_copyable (compiling source file RTDyldMemoryManager.cpp)
llvm/ADT/SmallVector.h(315,32): error C2976: 'llvm::SmallVectorTemplateBase': too few template arguments (compiling source file RTDyldMemoryManager.cpp)```

Do you know if this is a bug in msvc or we need to improve something in that area?



Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57018/new/

https://reviews.llvm.org/D57018



More information about the llvm-commits mailing list