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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Patrick Palka <ppa...@gcc.gnu.org>:

https://gcc.gnu.org/g:e0bec6ceac47752616dd9fe0801344ed45db2fd3

commit r11-6614-ge0bec6ceac47752616dd9fe0801344ed45db2fd3
Author: Patrick Palka <ppa...@redhat.com>
Date:   Tue Jan 12 09:34:41 2021 -0500

    c++: Fix ICE with CTAD in concept [PR98611]

    This patch teaches cp_walk_subtrees to visit the template represented
    by a CTAD placeholder, which would otherwise be not visited during
    find_template_parameters.  The template may be a template template
    parameter (as in the first testcase), or it may implicitly use the
    template parameters of an enclosing class template (as in the second
    testcase), and in either case we need to visit this tree to record the
    template parameters used therein for later satisfaction.

    gcc/cp/ChangeLog:

            PR c++/98611
            * tree.c (cp_walk_subtrees) <case TEMPLATE_TYPE_PARM>: Visit
            the template of a CTAD placeholder.

    gcc/testsuite/ChangeLog:

            PR c++/98611
            * g++.dg/cpp2a/concepts-ctad1.C: New test.
            * g++.dg/cpp2a/concepts-ctad2.C: New test.

Reply via email to