diff options
author | Jason Merrill <jason@redhat.com> | 2025-04-09 13:22:56 -0400 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2025-04-10 10:04:46 -0400 |
commit | 39892d9618ee0f06dd09271589878b0df7b1e75d (patch) | |
tree | bd5cd5884fb4471ba5f56ebc6d9f5b85118e2871 /libjava/classpath/lib/java | |
parent | 911973a784aab34e13c683545f28177d0d7716cd (diff) | |
download | gcc-39892d9618ee0f06dd09271589878b0df7b1e75d.zip gcc-39892d9618ee0f06dd09271589878b0df7b1e75d.tar.gz gcc-39892d9618ee0f06dd09271589878b0df7b1e75d.tar.bz2 |
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.
Diffstat (limited to 'libjava/classpath/lib/java')
0 files changed, 0 insertions, 0 deletions