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

            Bug ID: 103709
           Summary: ICE: 'global_options' are modified in local context
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---
            Target: powerpc-*-linux-gnu

+++ This bug was initially created as a clone of Bug #92860 +++

gcc, at least configured for powerpc target and invoked w/ -mcpu= set to a
value valid to that target, ICEs when compiling testcases w/ explicitly wrong
(non-powerpc)
#pragrma GCC target ("")
statements:

% powerpc-e300c3-linux-gnu-gcc-12.0.0 -mcpu=401 -c
gcc/testsuite/gcc.target/i386/pr78451.c
gcc/testsuite/gcc.target/i386/pr78451.c:5:9: error: #pragma GCC target
'avx512bw' is invalid
    5 | #pragma GCC target ("avx512bw")
      |         ^~~
gcc/testsuite/gcc.target/i386/pr78451.c:14:9: error: #pragma GCC target
'avx512vl' is invalid
   14 | #pragma GCC target ("avx512vl")
      |         ^~~
gcc/testsuite/gcc.target/i386/pr78451.c:22:9: internal compiler error:
'global_options' are modified in local context
   22 | #pragma GCC pop_options
      |         ^~~
0xda415d cl_optimization_compare(gcc_options*, gcc_options*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/build/gcc/options-save.c:14102
0x90c183 handle_pragma_pop_options
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c-family/c-pragma.c:1137
0x8769d7 c_parser_pragma
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c/c-parser.c:12615
0x8a2bb5 c_parser_external_declaration
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c/c-parser.c:1760
0x8a31cb c_parser_translation_unit
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c/c-parser.c:1652
0x8a31cb c_parse_file()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c/c-parser.c:23324
0x909bd9 c_common_parse_file()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211212/work/gcc-12-20211212/gcc/c-family/c-opts.c:1238

It was initially reported in PR92860 comment 38.

Reply via email to