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

Roger Jarrett via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 11 12:01:56 PDT 2021


rogerjarrett added inline comments.


================
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");
----------------
v.g.vassilev wrote:
> 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?
> 
I am experiencing the  same error compiling LLVM 12.0.0  with VC19 version 14.27.29110  any updates ?


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