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

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Jason Merrill
<ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:92e9b2a995f718f1c2ab1cd0840b439c24d3535f

commit r10-9852-g92e9b2a995f718f1c2ab1cd0840b439c24d3535f
Author: Jason Merrill <ja...@redhat.com>
Date:   Fri Apr 9 18:02:38 2021 -0400

    c++: deduction guide using alias [PR99180]

    alias_ctad_tweaks was expecting that all deduction guides for the class
    would be suitable for deduction from the alias definition; in this case,
the
    deduction guide uses 'true' and the alias B uses 'false', so deduction
    fails.  But that's OK, we just don't use that deduction guide.  I also
    noticed that we were giving up on deduction entirely if substitution failed
    for some guide; we should only give up on that particular deduction guide.

    We ought to give a better diagnostic about this case when deduction fails,
    but that can wait.

    gcc/cp/ChangeLog:

            PR c++/99180
            PR c++/93295
            PR c++/93867
            PR c++/99118
            PR c++/96873
            * pt.c (alias_ctad_tweaks): Handle failure better.

    gcc/testsuite/ChangeLog:

            PR c++/99180
            PR c++/93295
            PR c++/93867
            PR c++/95486
            * g++.dg/cpp2a/class-deduction-alias5.C: New test.
            * g++.dg/cpp2a/class-deduction-alias6.C: New test.
            * g++.dg/cpp2a/class-deduction-alias7.C: New test.
            * g++.dg/cpp2a/class-deduction-alias8.C: New test.

Reply via email to