summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2017-05-03 13:07:18 -0700
committerThiago Macieira <thiago.macieira@intel.com>2017-06-03 03:35:57 +0000
commitb7d76e533c76f7d9e9373d68f33ff9595fe8ce52 (patch)
tree2ba6cefb87e20c7e9668a2b09729388837ebd3bc /mkspecs
parente4eaa629439fe1ba1e157c2d81adee51d1995161 (diff)
MSVC: Enable standard-conformance mode by default
That's not the same as -Za. Change-Id: Ica9894dc9b5e48278fd4fffd14bb316b687abffe Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/msvc-version.conf1
-rw-r--r--mkspecs/features/default_post.prf8
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)