c++: generic lambda, local class, __func__ [PR108242]
commitb323f52ccf966800297b0520b9e1d4b3951db525
authorJason Merrill <jason@redhat.com>
Thu, 16 Mar 2023 19:11:25 +0000 (16 15:11 -0400)
committerJason Merrill <jason@redhat.com>
Thu, 16 Mar 2023 22:10:27 +0000 (16 18:10 -0400)
treea694e779041f3edf0b7628e0d7b746916ee2e64d
parent1cc8814098bb46f9fca58a0b831fbf9a8574bdc9
c++: generic lambda, local class, __func__ [PR108242]

Here we are trying to do name lookup in a deferred instantiation of t() and
failing to find __func__.  tsubst_expr already tries to instantiate members
of local classes, but was failing with the partial instantiation of generic
lambdas.

PR c++/108242

gcc/cp/ChangeLog:

* pt.cc (tsubst_expr) [TAG_DEFN]: Handle partial instantiation.

gcc/testsuite/ChangeLog:

* g++.dg/cpp1y/lambda-generic-func2.C: New test.
gcc/cp/pt.cc
gcc/testsuite/g++.dg/cpp1y/lambda-generic-func2.C [new file with mode: 0644]