diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2530c1a0ef..4fd3972ad2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -326,7 +326,7 @@ if(MSVC)
# Note: In msbuild build, this gets set by msbuild by default
add_compile_options(/Zc:inline)
# Fix various other non-conformant behaviors
- add_compile_options(/Zc:__cplusplus,enumTypes,externConstexpr,preprocessor,throwingNew)
+ add_compile_options(/Zc:__cplusplus,enumTypes,externConstexpr,preprocessor,templateScope,throwingNew)
# Enforce strict volatile semantics as per ISO C++
add_compile_options(/volatile:iso)
diff --git a/Source/VSProps/Base.props b/Source/VSProps/Base.props
index 92808650d1..9fc87b6713 100644
--- a/Source/VSProps/Base.props
+++ b/Source/VSProps/Base.props
@@ -33,8 +33,7 @@
true
-
- /Zc:__cplusplus,enumTypes,externConstexpr,preprocessor,throwingNew /volatile:iso %(AdditionalOptions)
+ /Zc:__cplusplus,enumTypes,externConstexpr,preprocessor,templateScope,throwingNew /volatile:iso %(AdditionalOptions)
/Zo %(AdditionalOptions)
@@ -74,8 +73,7 @@
true
MultiThreadedDLL
false
-
- /Gw %(AdditionalOptions)
+ /Gw /Zc:checkGwOdr %(AdditionalOptions)
true