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

Reply via email to