Replace Windows CMake lambda constexpr capture workaround

While manually capturing constexpr variables used in lambda
expressions does work, it's really easy to forget doing so since
we don't have a Windows CMake builder and the workaround isn't
necessary anywhere else. Fortunately, MSVC has a flag that fixes
the constexpr capture behavior, so let's use that instead.
This commit is contained in:
JosJuice
2020-06-25 13:11:29 +02:00
parent 26ed3b318c
commit c9edfa0eaa
3 changed files with 20 additions and 18 deletions

View File

@ -241,6 +241,8 @@ if(CMAKE_C_COMPILER_ID MATCHES "MSVC")
add_compile_options(/Zc:throwingNew)
# Enforce strict volatile semantics as per ISO C++
add_compile_options(/volatile:iso)
# Fix non-conformant lambda behavior (constexpr variables shouldn't need capturing)
add_compile_options(/experimental:newLambdaProcessor)
string(APPEND CMAKE_EXE_LINKER_FLAGS " /NXCOMPAT")
else()