CMakeLists: Add /Zc:externConstexpr compilation flag

Improves standard conformance on Windows builds.
This commit is contained in:
Lioncash 2019-05-04 00:29:54 -04:00 committed by MerryMage
parent 3b2b47b522
commit 0d3375fc22

View File

@ -40,7 +40,7 @@ list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMakeModules")
# Compiler flags
if (MSVC)
set(DYNARMIC_CXX_FLAGS
/std:c++latest # CMAKE_CXX_STANDARD as no effect on MSVC until CMake 3.10.
/std:c++latest # CMAKE_CXX_STANDARD has no effect on MSVC until CMake 3.10.
/W4
/w34263 # Non-virtual member function hides base class virtual function
/w44265 # Class has virtual functions, but destructor is not virtual
@ -55,8 +55,9 @@ if (MSVC)
/Zi
/Zo
/EHsc
/Zc:throwingNew # Assumes new never returns null
/Zc:inline # Omits inline functions from object-file output
/Zc:externConstexpr # Allows external linkage for variables declared "extern constexpr", as the standard permits.
/Zc:inline # Omits inline functions from object-file output.
/Zc:throwingNew # Assumes new (without std::nothrow) never returns null.
/DNOMINMAX)
if (DYNARMIC_WARNINGS_AS_ERRORS)