So I found the Flags causing the problem:
/wd4702 /wd4512 /wd4510 /wd4503
These are not passed into -Xcompiler
as they should be.
Looking at the Accelerators\Vtkm\CMakeLists.txt
this seems to be supposed to specifically do that:
if (MSVC)
set(msvc_warning_flags
# Generates numerous false positives with template code about unreachable
# code
/wd4702
# Generates numerous warning that implicit assignment operators can't be
# constructed. This is understood and we don't care.
/wd4512
# Generates numerous warning that implicit constructors can't be
# constructed. This is understood and we don't care.
/wd4510
# Generates warnings when decorated names are over 4096 characters
# This compiler warning is deprecated and no longer occurs with VS2017+.
# So we suppress for VS2015
/wd4503
)
set(vtkm_msvc_flags)
foreach (msvc_warning_flag IN LISTS msvc_warning_flags)
if (TARGET vtkm::cuda)
list(APPEND vtkm_msvc_flags
$<$<COMPILE_LANGUAGE:CUDA>:-Xcompiler=${msvc_warning_flag},${msvc_warning_flag}>)
else ()
list(APPEND vtkm_msvc_flags
${msvc_warning_flag})
endif ()
endforeach ()
vtk_module_compile_options(VTK::AcceleratorsVTKm
PRIVATE
${msvc_warning_flags})
endif ()
I’ve tried to fiddle around with this but didn’t seem to manage anything, any suggestions? I see this was a issue on here before: