[Bug c++/99445] [11 Regression] ICE in hashtab_chk_error, at hash-table.c:137 since r11-7011-g6e0a231a4aa2407b

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Mar 9 11:45:42 GMT 2021


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.


More information about the Gcc-bugs mailing list