commit:     9a06b7210562b8d03577cd4043227ea2023db1f2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 25 08:13:28 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Feb 25 08:15:18 2024 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=9a06b721

bin/install-qa-check.d: 90gcc-warnings: drop GCC warnings with known (heavy) FPs

Drop -Wstringop-overflow, -Wstringop-overread, -Wstringop-truncation, -Waddress,
and -Wreturn-local-addr for now because they cause too many FPs.

We want only reliable warnings for this Portage QA check as we encourage people
to report these upstream.

Bug: https://gcc.gnu.org/PR88443
Bug: https://gcc.gnu.org/PR88781
Bug: https://gcc.gnu.org/PR93644
Bug: https://gcc.gnu.org/PR97048
Bug: https://gcc.gnu.org/PR103360
Bug: https://bugs.gentoo.org/925460
Signed-off-by: Sam James <sam <AT> gentoo.org>

 NEWS                                  |  2 ++
 bin/install-qa-check.d/90gcc-warnings | 18 ++++++++++++------
 2 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/NEWS b/NEWS
index 94be26de84..83be372043 100644
--- a/NEWS
+++ b/NEWS
@@ -12,6 +12,8 @@ portage-3.0.63 (UNRELEASED)
 Bug fixes:
 * emerge: Skip installed packages with emptytree in depgraph selection (bug 
#651018).
 
+* bin/install-qa-check.d: 90gcc-warnings: drop warnings with too many FPs (bug 
#925460).
+
 portage-3.0.62 (2024-02-22)
 --------------
 

diff --git a/bin/install-qa-check.d/90gcc-warnings 
b/bin/install-qa-check.d/90gcc-warnings
index 449bf23627..1060618dfa 100644
--- a/bin/install-qa-check.d/90gcc-warnings
+++ b/bin/install-qa-check.d/90gcc-warnings
@@ -44,9 +44,12 @@ gcc_warn_check() {
                        # those three do not have matching -W flags, it seems
                        'warning: .*will always overflow destination buffer'
                        # compile-time part of FORTIFY_SOURCE
-                       'warning: .*\[-Wstringop-overflow\]'
-                       'warning: .*\[-Wstringop-overread\]'
-                       'warning: .*\[-Wstringop-truncation\]'
+                       # XXX: Commented out because of gcc FPs 
(https://gcc.gnu.org/PR88443)
+                       #'warning: .*\[-Wstringop-overflow\]'
+                       # XXX: Commented out because of gcc FPs 
(https://gcc.gnu.org/PR97048)
+                       #'warning: .*\[-Wstringop-overread\]'
+                       # XXX: Commented out because of gcc FPs 
(https://gcc.gnu.org/PR88781)
+                       #'warning: .*\[-Wstringop-truncation\]'
                        # clang-only, equivalent of -Wstringop-overflow
                        'warning: .*\[-Wfortify-source\]'
                        'warning: .*assuming pointer wraparound does not occur'
@@ -68,7 +71,8 @@ gcc_warn_check() {
                        'warning: .*function.*\[-Wpointer-arith\]'
                        # the address of ... will never be NULL and likes
                        # (uses of function refs & string constants in 
conditionals)
-                       'warning: .*\[-Waddress\]'
+                       # XXX: Commented out because of gcc FPs 
(https://gcc.gnu.org/PR103360)
+                       #'warning: .*\[-Waddress\]'
 
                        # TODO: we want to enable these but bash currently 
triggers
                        # them with a trick in random.c where it intentionally 
wants
@@ -95,7 +99,8 @@ gcc_warn_check() {
                        'warning: .*matching.*\[-Wformat=\]'
 
                        # function returns address of local variable
-                       'warning: .*\[-Wreturn-local-addr\]'
+                       # XXX: Commented out for bug #925460 
(https://gcc.gnu.org/PR93644)
+                       #'warning: .*\[-Wreturn-local-addr\]'
                        # missing return at end of function, or non-void return 
in a void function
                        # (clang at least aggressively optimises on this)
                        'warning: .*\[-Wreturn-type\]'
@@ -123,7 +128,8 @@ gcc_warn_check() {
                        'warning: .*\[-Wodr\]'
                        # warning: argument value A will result in undefined 
behaviour (Clang)
                        'warning: .*\[-Wargument-undefined-behaviour\]'
-                       'warning: .*\[-Wnull-dereference\]'
+                       # XXX: Commented out because of GCC FPs 
(https://gcc.gnu.org/PR86172)
+                       #'warning: .*\[-Wnull-dereference\]'
 
                        # general sensible warnings (will be rejected by modern 
compilers soon)
                        'warning: .*\[-Wmain\]'

Reply via email to