From: Rainer Orth Date: Wed, 3 Mar 2021 15:01:50 +0000 (+0100) Subject: sparcv9: Disable -Wuninitialized warnings breaking bootstrap [PR92002] X-Git-Tag: upstream/12.2.0~9470 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fa6092d2cdc654d4b2e018929c0dbe13fbd4ea69;p=platform%2Fupstream%2Fgcc.git sparcv9: Disable -Wuninitialized warnings breaking bootstrap [PR92002] sparcv9 bootstrap has been broken for 1 1/2 years now by spurious -Wuninitialized warnings: In function ‘wide_int wi::max_value(unsigned int, signop)’, inlined from ‘wide_int wi::max_value(unsigned int, signop)’ at /vol/gcc/src/hg/master/local/gcc/wide-int.cc:330:1: /vol/gcc/src/hg/master/local/gcc/wide-int.cc:335:31: error: ‘.generic_wide_int::.wide_int_storage::val[1]’ may be used uninitialized [-Werror=maybe-uninitialized] 335 | return shwi (-1, precision); | ^ [...] In function ‘wide_int get_nonzero_bits(const_tree)’, inlined from ‘wide_int get_nonzero_bits(const_tree)’ at /vol/gcc/src/hg/master/local/gcc/tree-ssanames.c:531:1: /vol/gcc/src/hg/master/local/gcc/tree-ssanames.c:544:67: error: ‘.generic_wide_int::.wide_int_storage::val[1]’ may be used uninitialized [-Werror=maybe-uninitialized] 544 | | (HOST_WIDE_INT) pi->misalign, precision); | ^ [...] Before we ship yet another release with this issue, I suggest to at least include a workaround of demoting them to warnings. Tested on sparcv9-sun-solaris2.11. 2021-03-03 Rainer Orth gcc: PR bootstrap/92002 * config/sparc/t-sparc (tree-ssanames.o-warn): Don't error for -Wuninitialized, -Wmaybe-uninitialized. (wide-int.o-warn): Likewise. --- diff --git a/gcc/config/sparc/t-sparc b/gcc/config/sparc/t-sparc index de99ce7..64906e9 100644 --- a/gcc/config/sparc/t-sparc +++ b/gcc/config/sparc/t-sparc @@ -27,3 +27,7 @@ sparc-c.o: $(srcdir)/config/sparc/sparc-c.c sparc-d.o: $(srcdir)/config/sparc/sparc-d.c $(COMPILE) $< $(POSTCOMPILE) + +# Hack around PR bootstrap/92002. +tree-ssanames.o-warn += -Wno-error=uninitialized -Wno-error=maybe-uninitialized +wide-int.o-warn += -Wno-error=uninitialized -Wno-error=maybe-uninitialized