https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99445
Bug ID: 99445 Summary: [11 Regression] ICE in Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: doko at debian dot org Target Milestone: --- Created attachment 50322 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50322&action=edit preprocessed source, unreduced seen with trunk 20210227, building the broker package. $cat foo.ii template <typename> class decay; template <class> struct implicit_conversions; template <class T> using implicit_conversions_t = typename implicit_conversions<T>::type; template <class> struct response_type; template <class Ts, class... Xs> using response_type_t = typename response_type<Ts, Xs...>::type; template <class Handle, class... Ts> response_type<typename Handle::signatures, implicit_conversions_t<typename decay<Ts>::type>...> response_type_t < typename Handle::signatures, typename implicit_conversions<typename decay<Ts>::type>::type... $ g++ -c -fchecking=2 --param=hash-table-verification-limit=1000 foo.ii hash table checking failed: equal operator returns true for a pair of values with a different hash value foo.ii: In substitution of ‘template<class Ts, class ... Xs> using response_type_t = typename response_type<Ts, Xs ...>::type [with Ts = typename Handle::signatures; Xs = {typename implicit_conversions<typename decay<Ts>::type>::type ...}]’: foo.ii:12:66: required from here foo.ii:7:7: internal compiler error: in hashtab_chk_error, at hash-table.c:137 7 | using response_type_t = typename response_type<Ts, Xs...>::type; | ^~~~~~~~~~~~~~~ 0x120e1f7 hashtab_chk_error() ../../src/gcc/hash-table.c:137 0x7863d0 hash_table<spec_hasher, false, xcallocator>::verify(spec_entry* const&, unsigned int) ../../src/gcc/hash-table.h:1033 0x7863d0 hash_table<spec_hasher, false, xcallocator>::find_with_hash(spec_entry* const&, unsigned int) ../../src/gcc/hash-table.h:918 0x14cdeff lookup_template_class_1 ../../src/gcc/cp/pt.c:9871 0x14fe6fe lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*, int, int) ../../src/gcc/cp/pt.c:10243 0x14fe6fe tsubst_aggr_type ../../src/gcc/cp/pt.c:13576 0x14e2f18 tsubst(tree_node*, tree_node*, int, tree_node*) ../../src/gcc/cp/pt.c:16037 0x15b98f7 tsubst_decl ../../src/gcc/cp/pt.c:14802 0x160ea6d instantiate_template_1 ../../src/gcc/cp/pt.c:21118 0x160e884 instantiate_template(tree_node*, tree_node*, int) ../../src/gcc/cp/pt.c:21177 0x14e3a38 instantiate_alias_template ../../src/gcc/cp/pt.c:21215 0x14e3a38 tsubst(tree_node*, tree_node*, int, tree_node*) ../../src/gcc/cp/pt.c:15444 0x14cf10d lookup_template_class_1 ../../src/gcc/cp/pt.c:9944 0x14cc186 lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*, int, int) ../../src/gcc/cp/pt.c:10243 0x14cc186 finish_template_type(tree_node*, tree_node*, int) ../../src/gcc/cp/semantics.c:3498 0x13e7bd3 cp_parser_template_id ../../src/gcc/cp/parser.c:17437 0x13ef262 cp_parser_class_name ../../src/gcc/cp/parser.c:24664 0x13e240f cp_parser_qualifying_entity ../../src/gcc/cp/parser.c:6994 0x13e240f cp_parser_nested_name_specifier_opt ../../src/gcc/cp/parser.c:6676 0x13ded32 cp_parser_nested_name_specifier ../../src/gcc/cp/parser.c:6920 Please submit a full bug report, with preprocessed source if appropriate.