Make std::is_trivially_copyable opt-in
The std::is_trivially_copyable
check is important for VTK-m because copying objects across memory spaces only really works if the object is trivially copyable (whether the compiler knows about that or not). The problem is that many compilers that claim to be C++14 compatible do not properly implement std::is_trivially_copyable
.
We already have a workaround for this in VTK-m (vtkmstd/is_trivial.h
). However, for the moment we should consider being more conservative in or portability layer by only using std::is_trivially_copyable
on compilers that we know support it (as opposed to disabling it only on compilers we found to not support it).