https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98636
--- Comment #16 from prathamesh3492 at gcc dot gnu.org --- (In reply to Tamar Christina from comment #14) > I just ran into the same problem, with a slightly different testcase: This is a better one to reproduce the issue, thanks! I verified the patch in comment 10 resolves the ICE for this test-case. Thanks, Prathamesh > > > cat crash.c > > #pragma GCC push_options > #pragma GCC target ("arch=armv8.2-a+fp16") > #pragma GCC pop_options > > results in the same crash: > > crash.c:3:9: internal compiler error: 'global_options' are modified in local > context > 3 | #pragma GCC pop_options > | ^~~ > 0x1199c6d cl_optimization_compare(gcc_options*, gcc_options*) > build-arm-none-eabi/obj/gcc2/gcc/options-save.c:14897 > 0xb38463 handle_pragma_pop_options > src/gcc/gcc/c-family/c-pragma.c:1092 > 0xb38eef c_invoke_pragma_handler(unsigned int) > src/gcc/gcc/c-family/c-pragma.c:1515 > 0xa80622 c_parser_pragma > src/gcc/gcc/c/c-parser.c:12525 > 0xa63dc6 c_parser_external_declaration > src/gcc/gcc/c/c-parser.c:1758 > 0xa63938 c_parser_translation_unit > src/gcc/gcc/c/c-parser.c:1650 > 0xaa6139 c_parse_file() > src/gcc/gcc/c/c-parser.c:21990 > 0xb322f2 c_common_parse_file() > src/gcc/gcc/c-family/c-opts.c:1211