https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88077
Bug ID: 88077 Summary: [8/9 Regression] ICE: tree check: expected class ‘type’, have ‘declaration’ (var_decl) in lto_symtab_merge, at lto/lto-symtab.c:378 since r256989 Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: marxin at gcc dot gnu.org Target Milestone: --- Starting from my commit we ICE on: $ cat 1.i int HeaderStr; $ cat 2.i char HeaderStr[]; $ gcc [12].i -flto -O2 -shared 2.i:1:6: warning: array ‘HeaderStr’ assumed to have one element 1 | char HeaderStr[]; | ^~~~~~~~~ lto1: internal compiler error: tree check: expected class ‘type’, have ‘declaration’ (var_decl) in lto_symtab_merge, at lto/lto-symtab.c:378 0x6b6361 tree_class_check_failed(tree_node const*, tree_code_class, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/tree.c:9707 0x5b710b tree_class_check(tree_node*, tree_code_class, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/tree.h:3277 0x5b710b lto_symtab_merge /home/marxin/Programming/gcc/gcc/lto/lto-symtab.c:378 0x5b710b lto_symtab_merge_decls_2 /home/marxin/Programming/gcc/gcc/lto/lto-symtab.c:636 0x5b710b lto_symtab_merge_decls_1 /home/marxin/Programming/gcc/gcc/lto/lto-symtab.c:849 0x5b710b lto_symtab_merge_decls() /home/marxin/Programming/gcc/gcc/lto/lto-symtab.c:875 0x78cfc4 read_cgraph_and_symbols /home/marxin/Programming/gcc/gcc/lto/lto.c:2962 0x78cfc4 lto_main() /home/marxin/Programming/gcc/gcc/lto/lto.c:3401