[Bug bootstrap/85838] New: -Wmaybe-uninitialized warning in sparc.c (sparc_expand_builtin) breaks SPARC bootstrap

ro at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri May 18 18:40:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85838

            Bug ID: 85838
           Summary: -Wmaybe-uninitialized warning in sparc.c
                    (sparc_expand_builtin) breaks SPARC bootstrap
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
                CC: ebotcazou at gcc dot gnu.org, rguenth at gcc dot gnu.org
  Target Milestone: ---
              Host: sparc-sun-solaris2.*
            Target: sparc-sun-solaris2.*
             Build: sparc-sun-solaris2.*

Between 20180517 (r260326) and 20180518 (r260354), Solaris/SPARC bootstrap got
broken.  Compiling sparc.c in stage2 gives

In file included from /vol/gcc/src/hg/trunk/local/gcc/config/sparc/sparc.c:42:
/vol/gcc/src/hg/trunk/local/gcc/recog.h: In function 'rtx_def*
sparc_expand_builtin(tree, rtx, rtx, machine_mode, int)':
/vol/gcc/src/hg/trunk/local/gcc/recog.h:303:85: error: 'op[0]' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
   rtx_insn * operator () (rtx a0, rtx a1, rtx a2, rtx a3) const { return
((f4)func) (a0, a1, a2, a3); }
                                                                         
~~~~~~~~~~~^~~~~~~~~~~~~~~~
/vol/gcc/src/hg/trunk/local/gcc/config/sparc/sparc.c:11595:12: note: 'op[0]'
was declared here
   rtx pat, op[4];
            ^~

A reghunt identified this patch

2018-05-18  Richard Biener  <rguenther@suse.de>

        * tree-dfa.c (get_ref_base_and_extent): Use range-info to refine
        results when processing array refs with variable index.

as the culprit.


More information about the Gcc-bugs mailing list