From f5aa8317d0f08159c640590689cbdcc56a248d96 Mon Sep 17 00:00:00 2001 From: Amir Masoud Abdol Date: Thu, 6 Apr 2023 17:37:00 +0200 Subject: [PATCH] Add `-Wno-error=stringop-overread` to warnings_are_errors_flags Besides `stringop-overflow`, the `stringop-overread` is also buggy, and it has some false positives. If not silenced, this will break the unity build as several warnings are being emitted in qmetaobject.cpp, etc. Pick-to: 6.5 Change-Id: I708c81057c01d8d8fc9694c394c89602a2f6867b Reviewed-by: Alexey Edelev --- cmake/QtInternalTargets.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cmake/QtInternalTargets.cmake b/cmake/QtInternalTargets.cmake index 21730457d84..2208c28f346 100644 --- a/cmake/QtInternalTargets.cmake +++ b/cmake/QtInternalTargets.cmake @@ -48,6 +48,11 @@ function(qt_internal_set_warnings_are_errors_flags target target_scope) if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "11.0.0") # We do mixed enum arithmetic all over the place: list(APPEND flags -Wno-error=deprecated-enum-enum-conversion -Wno-error=deprecated-enum-float-conversion) + + # GCC has some false positive, and it specifically comes through in MINGW + if (MINGW) + list(APPEND flags -Wno-error=stringop-overread) + endif() endif() if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "11.0.0" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "11.2.0")