https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99445
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (gdb) p debug_tree ($15->args) <tree_vec 0x7fffea19ec80 length:1 elt:0 <type_argument_pack 0x7fffea1b4e70 type <tree_vec 0x7fffea19eca0 length:1 elt:0 <type_pack_expansion 0x7fffea1b4dc8>> VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fffea1b4e70>> $23 = void (gdb) p debug_tree ($16->args) <tree_vec 0x7fffea19eb80 length:1 elt:0 <type_argument_pack 0x7fffea1b4930 type <tree_vec 0x7fffea19eba0 length:1 elt:0 <type_pack_expansion 0x7fffea1b4888>> VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fffea1b4930>> $24 = void (gdb) p iterative_hash_template_arg ($15->args, 0) $25 = 1060540270 (gdb) p iterative_hash_template_arg ($16->args, 0) $26 = 2053511766 (gdb) p comp_template_args ($15->args, $16->args, 0, 0, false) $27 = 1 (gdb) p debug_tree (0x7fffea1b4dc8) <type_pack_expansion 0x7fffea1b4dc8 type <typename_type 0x7fffea1b4738 type VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality context <record_type 0x7fffea1b4690 implicit_conversions> fullname <identifier_node 0x7fffea05b300 type normal local bindings <(nil)>> chain <type_decl 0x7fffea06ee40 type>> VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality> $28 = void (gdb) p debug_tree (0x7fffea1b4888) <type_pack_expansion 0x7fffea1b4888 type <typename_type 0x7fffea1b47e0 implicit_conversions_t VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality context <record_type 0x7fffea1b4690 implicit_conversions> fullname <identifier_node 0x7fffea05b300 type normal local bindings <(nil)>> chain <type_decl 0x7fffea06ee40 type>> type_0 type_6 VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality> $29 = void and flag_concepts is false. So the template args hash differently but compare equal.