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

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

https://gcc.gnu.org/g:9e6170098d5e7756e85e880f8f4cb18e885a64fd

commit r13-6555-g9e6170098d5e7756e85e880f8f4cb18e885a64fd
Author: Jason Merrill <ja...@redhat.com>
Date:   Wed Feb 8 22:06:22 2023 -0800

    c++: fix alias CTAD [PR105841]

    In my initial implementation of alias CTAD, I described a couple of
    differences from the specification that I thought would not have a
practical
    effect; this testcase demonstrates that I was wrong.  One difference is
    resolved by the CPTK_IS_DEDUCIBLE commit; the other (adding too many of the
    alias template parameters to the new deduction guide) is fixed by this
    patch.

            PR c++/105841

    gcc/cp/ChangeLog:

            * pt.cc (corresponding_template_parameter_list): Split out...
            (corresponding_template_parameter): ...from here.
            (find_template_parameters): Factor out...
            (find_template_parameter_info::find_in): ...this function.
            (find_template_parameter_info::find_in_recursive): New.
            (find_template_parameter_info::found): New.
            (alias_ctad_tweaks): Only add parms used in the deduced args.

    gcc/testsuite/ChangeLog:

            * g++.dg/cpp2a/class-deduction-alias14.C: New test.

    Co-authored-by: Michael Spertus <m...@spertus.com>

Reply via email to