llvm::is_trivially_copyable portability is verified at compile time using std::is_trivially_copyable as the reference implementation. Unfortunately, the latter is not available on all platforms, so introduce a proper configure check to detect if it is available on the target platform.
In a similar manner, std::is_copy_assignable is not fully supported for gcc4.9. Provide a portable (?) implementation instead.
Hi @serge-sans-paille, we hit this assert when compiling llvm9 on windows (latest version (v16.8.2) of VS 2019):
Do you know if this is a bug in msvc or we need to improve something in that area?