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

--- Comment #3 from GCC 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:39892d9618ee0f06dd09271589878b0df7b1e75d

commit r15-9362-g39892d9618ee0f06dd09271589878b0df7b1e75d
Author: Jason Merrill <ja...@redhat.com>
Date:   Wed Apr 9 13:22:56 2025 -0400

    c++: lambda in constraint of lambda [PR119175]

    Here when we went to mangle the constraints of from<0>, the outer lambda
has
    no mangling scope, but the inner one was treated as having the outer one as
    its scope.  And mangling the outer one means mangling its constraints,
which
    include the inner one.  So infinite recursion.

    But a lambda closure type isn't a scope that anything should have for
    mangling, the inner lambda should also have no mangling scope.

            PR c++/119175

    gcc/cp/ChangeLog:

            * mangle.cc (decl_mangling_context): Look through lambda type.

    gcc/testsuite/ChangeLog:

            * g++.dg/cpp2a/concepts-lambda23.C: New test.

Reply via email to