summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@qt.io>2020-08-25 12:52:48 +0200
committerKai Koehne <kai.koehne@qt.io>2020-08-26 17:30:40 +0200
commit146421ecaf6cfa4a5f2077b57b922547d0479013 (patch)
treeb7f2860b7a94a7625dfd0ce3136f351752304b54
parentb5f972361aa01f55511712016fb2f4f540cdbc66 (diff)
headersclean: Check for all-W3 MSVC warnings
C4180, C4458 were disabled already in 2012, in commit 6668f5becfb. C4577 was disabled due to QtScript being compiled without exception support in commit 97d7d80e735. Anyhow, Qt Script is now officially gone in Qt 6, and Qt headers do work just fine with C4180. Finally, C4458 is nowadays a W4 warning, so not enabled in the first place. Task-number: QTBUG-82615 Change-Id: I2f9b8e858817876b069a166129fbfac7ef3587a0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
-rw-r--r--cmake/QtHeadersClean.cmake7
-rw-r--r--mkspecs/features/qt_module_headers.prf8
2 files changed, 2 insertions, 13 deletions
diff --git a/cmake/QtHeadersClean.cmake b/cmake/QtHeadersClean.cmake
index 9719cdbaa5..e3e432a89f 100644
--- a/cmake/QtHeadersClean.cmake
+++ b/cmake/QtHeadersClean.cmake
@@ -99,14 +99,9 @@ function(qt_internal_add_headers_clean_target
endforeach()
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
- # 4180: qualifier applied to function type has no meaning; ignored
- # 4458: declaration of 'identifier' hides class member
- # 4577: 'noexcept' used with no exception handling mode specified; termination on
- # exception is not guaranteed. Specify /EHsc
- #
# -Za would enable strict standards behavior, but we can't add it because
# <windows.h> and <GL.h> violate the standards.
- set(hcleanFLAGS -std:c++17 -WX -W3 -wd4180 -wd4458 -wd4577)
+ set(hcleanFLAGS -std:c++17 -WX -W3)
# cl.exe needs a source path
get_filename_component(source_path "${QT_MKSPECS_DIR}/features/data/dummy.cpp" REALPATH)
diff --git a/mkspecs/features/qt_module_headers.prf b/mkspecs/features/qt_module_headers.prf
index 7df1820248..f7db61a8b2 100644
--- a/mkspecs/features/qt_module_headers.prf
+++ b/mkspecs/features/qt_module_headers.prf
@@ -273,15 +273,9 @@ headersclean:!internal_module {
hcleanCOMMAND = $(CXX) -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -xc++ ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
} else: msvc:!intel_icl {
- # 4180: qualifier applied to function type has no meaning; ignored
- # 4458: declaration of 'identifier' hides class member
# -Za enables strict standards behavior, but we can't add it because
# <windows.h> and <GL.h> violate the standards.
- hcleanFLAGS = -WX -W3 -wd4180 -wd4458
-
- # MSVC 2015 (compiler version 19.0):
- # 4577: 'noexcept' used with no exception handling mode specified; termination on exception is not guaranteed. Specify /EHsc
- greaterThan(QMAKE_MSC_VER, 18): hcleanFLAGS += -wd4577
+ hcleanFLAGS = -WX -W3
hcleanCOMMAND = $(CXX) -c $(CXXFLAGS) $$hcleanFLAGS $(INCPATH) $$hcleanDEFS -FI${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT} \
$$[QT_INSTALL_DATA/src]/mkspecs/features/data/dummy.cpp