[Bug c++/99201] [9/10 Regression] ICE in tsubst_copy, at cp/pt.c:16581 since r8-7613-g1456e764105702a0

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu May 20 21:35:00 GMT 2021


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

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

https://gcc.gnu.org/g:7c365bb1462a7a9dadf9b8f8668a0c832b18056c

commit r10-9844-g7c365bb1462a7a9dadf9b8f8668a0c832b18056c
Author: Jason Merrill <jason@redhat.com>
Date:   Sun Apr 4 01:01:56 2021 -0400

    c++: constexpr if and nested generic lambda [PR99201]

    When building up *_EXTRA_ARGS for a constexpr if or pack expansion, we need
    to walk into the body of a lambda to find all the local_specializations
that
    we need to remember, like we do in find_parameter_packs_r.

    gcc/cp/ChangeLog:

            PR c++/99201
            * pt.c (class el_data): Add visited field.
            (extract_local_specs): Pass it to cp_walk_tree.
            (extract_locals_r): Walk into the body of a lambda.

    gcc/testsuite/ChangeLog:

            PR c++/99201
            * g++.dg/cpp1z/constexpr-if-lambda4.C: New test.


More information about the Gcc-bugs mailing list