From 648e9696d38f9338019d30f297029ba34efb673c Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Sat, 19 Jun 2021 12:14:51 +0200 Subject: [PATCH] Disable -Werror=stringop-overflow on GCC >= 10 There's a number of upstream bugs that cause false positives; do not make them errors. Change-Id: I4151794d8d37177a47a34aef8d83accf4377d44a Pick-to: 6.1 6.2 Reviewed-by: Volker Hilsheimer Reviewed-by: Alexandru Croitor Reviewed-by: Thiago Macieira --- cmake/QtInternalTargets.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cmake/QtInternalTargets.cmake b/cmake/QtInternalTargets.cmake index 52d29a86731..1300453122e 100644 --- a/cmake/QtInternalTargets.cmake +++ b/cmake/QtInternalTargets.cmake @@ -32,6 +32,14 @@ function(qt_internal_set_warnings_are_errors_flags target) list(APPEND flags -Wno-error=format-overflow) endif() + if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "10.0.0") + # GCC 10 has a number of bugs in -Wstringop-overflow. Do not make them an error. + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92955 + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94335 + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101134 + list(APPEND flags -Wno-error=stringop-overflow) + endif() + 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)