[Bug c++/93907] [10 Regression] internal compiler error: in hashtab_chk_error, at hash-table.c:137

marxin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Mar 12 08:13:19 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93907

--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
commit r10-7133-gbde31a76ba48be49dbe26317ce5e19d10ae9f310
Author: Jason Merrill <jason@redhat.com>
Date:   Wed Mar 11 00:53:01 2020 -0400

    c++: Fix ICE with concepts and aliases [PR93907].

    The problem here was that we were checking satisfaction once with 'e', a
    typedef of 'void', and another time with 'void' directly, and treated them
    as different for hashing based on the assumption that
    canonicalize_type_argument would have already removed a typedef that wasn't
    a complex dependent alias.  But that wasn't happening here, so let's add a
    call.

    gcc/cp/ChangeLog
    2020-03-11  Jason Merrill  <jason@redhat.com>

            PR c++/93907
            * constraint.cc (tsubst_parameter_mapping): Canonicalize type
            argument.


More information about the Gcc-bugs mailing list