https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101886
Bug ID: 101886 Summary: [11/12 Regression][concepts] ICE with auto as template parameter Product: gcc Version: 12.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: reichelt at gcc dot gnu.org Target Milestone: --- The following valid code snippet (compiled with "-fconcepts") triggers an ICE since GCC 11.1.0: ======================================== template<typename...> struct A { }; A<int, int> a; A<auto, auto> b1 = a; A<auto, auto> b2 = a; ======================================== bug.cc:5:13: internal compiler error: same canonical type node for different types 'auto' and 'auto' 5 | A<auto, auto> b2 = a; | ^ 0xb4eb9d comptypes(tree_node*, tree_node*, int) ../../gcc-11.1.0/gcc/cp/typeck.c:1565 0xab322f template_args_equal(tree_node*, tree_node*, bool) ../../gcc-11.1.0/gcc/cp/pt.c:9231 0xb42e41 cp_tree_equal(tree_node*, tree_node*) ../../gcc-11.1.0/gcc/cp/tree.c:4079 0xab305a template_args_equal(tree_node*, tree_node*, bool) ../../gcc-11.1.0/gcc/cp/pt.c:9249 0xab2d88 template_args_equal(tree_node*, tree_node*, bool) ../../gcc-11.1.0/gcc/cp/pt.c:9194 0xab2d88 comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**, bool) ../../gcc-11.1.0/gcc/cp/pt.c:9278 0xab2d88 comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**, bool) ../../gcc-11.1.0/gcc/cp/pt.c:9258 0xabc9f3 spec_hasher::equal(spec_entry*, spec_entry*) ../../gcc-11.1.0/gcc/cp/pt.c:1727 0xb02944 hash_table<spec_hasher, false, xcallocator>::find_with_hash(spec_entry* const&, unsigned int) ../../gcc-11.1.0/gcc/hash-table.h:923 0xaeef47 lookup_template_class_1 ../../gcc-11.1.0/gcc/cp/pt.c:9889 0xaf0bfc lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*, int, int) ../../gcc-11.1.0/gcc/cp/pt.c:10244 0xb1914b finish_template_type(tree_node*, tree_node*, int) ../../gcc-11.1.0/gcc/cp/semantics.c:3581 0xa8a8eb cp_parser_template_id ../../gcc-11.1.0/gcc/cp/parser.c:17486 0xa8aadb cp_parser_class_name ../../gcc-11.1.0/gcc/cp/parser.c:24722 0xa81fda cp_parser_qualifying_entity ../../gcc-11.1.0/gcc/cp/parser.c:7002 0xa81fda cp_parser_nested_name_specifier_opt ../../gcc-11.1.0/gcc/cp/parser.c:6684 0xaa2e18 cp_parser_template_introduction ../../gcc-11.1.0/gcc/cp/parser.c:30254 0xaa50c3 cp_parser_declaration ../../gcc-11.1.0/gcc/cp/parser.c:14149 0xaa5e4c cp_parser_toplevel_declaration ../../gcc-11.1.0/gcc/cp/parser.c:14183 0xaa5e4c cp_parser_translation_unit ../../gcc-11.1.0/gcc/cp/parser.c:4942 Please submit a full bug report, [etc.]