https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106764
Bug ID: 106764 Summary: ICE on invalid code in tree check: expected function_type or method_type, have error_mark in gimplify_call_expr, at gimplify.cc Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: k.even-mendoza at imperial dot ac.uk Target Milestone: --- This code leads to ICE in GCC-12 and 13: === (*a)(); b(){a()} a; === We are doing a study about compiler fuzzers. We got this from one of the tools. I wonder if such a bug is interesting even if the program is chopped in the middle? 1/1934d6e2aee70d21f4a7d16c0d1ff2867764c085.c: In function 'b': 1/1934d6e2aee70d21f4a7d16c0d1ff2867764c085.c:2:5: internal compiler error: tree check: expected function_type or method_type, have error_mark in gimplify_call_expr, at gimplify.cc:3681 2 | b(){a()} a; | ^~~ 0x7ee3f2 tree_check_failed(tree_node const*, char const*, int, char const*, ...) .././../gcc-source/gcc/tree.cc:8817 0x72df76 tree_check2(tree_node*, char const*, int, char const*, tree_code, tree_code) .././../gcc-source/gcc/tree.h:3527 0x72df76 gimplify_call_expr .././../gcc-source/gcc/gimplify.cc:3681 0xc3efa5 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) .././../gcc-source/gcc/gimplify.cc:15178 0xc426e6 gimplify_stmt(tree_node**, gimple**) .././../gcc-source/gcc/gimplify.cc:7153 0xc42ea5 gimplify_bind_expr .././../gcc-source/gcc/gimplify.cc:1434 0xc3f176 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) .././../gcc-source/gcc/gimplify.cc:15407 0xc50fbf gimplify_stmt(tree_node**, gimple**) .././../gcc-source/gcc/gimplify.cc:7153 0xc50fbf gimplify_body(tree_node*, bool) .././../gcc-source/gcc/gimplify.cc:16463 0xc5140b gimplify_function_tree(tree_node*) .././../gcc-source/gcc/gimplify.cc:16662 0xa7d1b7 cgraph_node::analyze() .././../gcc-source/gcc/cgraphunit.cc:676 0xa7fc87 analyze_functions .././../gcc-source/gcc/cgraphunit.cc:1240 0xa8095d symbol_table::finalize_compilation_unit() .././../gcc-source/gcc/cgraphunit.cc:2500 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. user42@srg01:~/git/directed-compiler-fuzzing-code/scripts/8-crash-testing/reduce$ more 1/1934d6e2aee70d21f4a7d16c0d1ff2867764c085.c