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