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

            Bug ID: 105818
           Summary: ICE: 'global_options' are modified in local context
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: ice-checking, ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---
            Target: powerpc-e300c3-linux-gnu

gcc 13.0.0 20220529 snapshot (g:58a40e76ebadce78639644cd3d56e42b68336927) ICEs
when compiling the following testcase, reduced from
gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s255.c, w/ -Os
-fno-tree-vectorize:#pragma GCC optimize "-fno-tree-vectorize"

void
foo (void)
{
  void
  bar (void);
}

% powerpc-e300c3-linux-gnu-gcc-13.0.0 -Os -fno-tree-vectorize -c sgyptdev.c
sgyptdev.c: In function 'foo':
sgyptdev.c:7:3: internal compiler error: 'global_options' are modified in local
context
    7 |   bar (void);
      |   ^~~
0xd5b42b cl_optimization_compare(gcc_options*, gcc_options*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/build/gcc/options-save.cc:14281
0x8e9234 handle_optimize_attribute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c-family/c-attribs.cc:5581
0x7e0fa4 decl_attributes(tree_node**, tree_node*, int, tree_node*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/attribs.cc:872
0x7fe1b7 start_decl(c_declarator*, c_declspecs*, bool, tree_node*, unsigned
int*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-decl.cc:5232
0x8625f5 c_parser_declaration_or_fndef
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:2315
0x841333 c_parser_compound_statement_nostart
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:5720
0x862085 c_parser_compound_statement
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:5617
0x863c18 c_parser_declaration_or_fndef
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:2552
0x86c003 c_parser_external_declaration
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:1787
0x86ca5b c_parser_translation_unit
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:1660
0x86ca5b c_parse_file()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c/c-parser.cc:23416
0x8cfb71 c_common_parse_file()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-13.0.0_p20220529/work/gcc-13-20220529/gcc/c-family/c-opts.cc:1235

Reply via email to