diff options
-rw-r--r-- | mkspecs/common/msvc-version.conf | 1 | ||||
-rw-r--r-- | mkspecs/features/default_post.prf | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf index 29f96b7abf..fdf7efc0a5 100644 --- a/mkspecs/common/msvc-version.conf +++ b/mkspecs/common/msvc-version.conf @@ -81,6 +81,7 @@ greaterThan(QMAKE_MSC_VER, 1909) { MSVC_VER = 15.0 COMPAT_MKSPEC = win32-msvc2017 QMAKE_CXXFLAGS += -Zc:referenceBinding + QMAKE_CXXFLAGS_STRICTCXX = -permissive- } greaterThan(QMAKE_MSC_VER, 1910) { diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf index 0e67223449..d18604e0b8 100644 --- a/mkspecs/features/default_post.prf +++ b/mkspecs/features/default_post.prf @@ -124,8 +124,12 @@ c++11|c++14|c++1z { cxxstd = CXX11 } - # Check if we should disable the GNU extensions or not - !strict_c++:!isEmpty(QMAKE_CXXFLAGS_GNU$$cxxstd): cxxstd = GNU$$cxxstd + # Check if we should disable compiler extensions or not + isEmpty(QMAKE_CXXFLAGS_GNU$$cxxstd) { + strict_c++: QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_STRICTCXX + } else { + !strict_c++: cxxstd = GNU$$cxxstd + } QMAKE_CXXFLAGS += $$eval(QMAKE_CXXFLAGS_$$cxxstd) QMAKE_LFLAGS += $$eval(QMAKE_LFLAGS_$$cxxstd) |