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

            Bug ID: 92721
           Summary: ICE: canonical types differ for identical types
                    'int(void*, void*)' and 'int(void*, void*)'
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

g++-10.0.0-alpha20191124 snapshot (r278660) ICEs when compiling the following
testcase reduced from gcc/testsuite/gcc.dg/attr-access-read-write-2.c:

int __attribute__ ((access (read_write, 1))) rdwr1_rdwr1 (void*, void*);
int rdwr1_rdwr1 (void*, void*);

% g++-10.0.0-alpha20191124 -c zyejqh4h.c
zyejqh4h.c:2:30: internal compiler error: canonical types differ for identical
types 'int(void*, void*)' and 'int(void*, void*)'
    2 | int rdwr1_rdwr1 (void*, void*);
      |                              ^
0x9fb63b comptypes(tree_node*, tree_node*, int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/typeck.c:1509
0x89e863 duplicate_decls(tree_node*, tree_node*, bool)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/decl.c:2306
0x91962f do_pushdecl
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/name-lookup.c:3042
0x91c39b pushdecl(tree_node*, bool)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/name-lookup.c:3171
0x91c39b maybe_push_decl(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/name-lookup.c:3202
0x8b426b start_decl(cp_declarator const*, cp_decl_specifier_seq*, int,
tree_node*, tree_node*, tree_node**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/decl.c:5375
0x9576d5 cp_parser_init_declarator
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/parser.c:20601
0x93aa52 cp_parser_simple_declaration
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/parser.c:13624
0x9623c6 cp_parser_declaration
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/parser.c:13322
0x9629e5 cp_parser_translation_unit
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/parser.c:4721
0x9629e5 c_parse_file()
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/cp/parser.c:42966
0xa70fee c_common_parse_file()
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191124/work/gcc-10-20191124/gcc/c-family/c-opts.c:1185

Reply via email to