Index: cp/pt.c =================================================================== --- cp/pt.c (revision 202785) +++ cp/pt.c (working copy) @@ -12434,7 +12438,8 @@ tsubst_copy (tree t, tree args, tsubst_flags_t com return t; case BASELINK: - return tsubst_baselink (t, current_class_type, args, complain, in_decl); + return tsubst_baselink (t, current_nonlambda_class_type (), + args, complain, in_decl); case TEMPLATE_DECL: if (DECL_TEMPLATE_TEMPLATE_PARM_P (t)) Index: testsuite/g++.dg/cpp0x/lambda/lambda-this17.C =================================================================== --- testsuite/g++.dg/cpp0x/lambda/lambda-this17.C (revision 0) +++ testsuite/g++.dg/cpp0x/lambda/lambda-this17.C (working copy) @@ -0,0 +1,21 @@ +// PR c++/58481 +// { dg-require-effective-target c++11 } + +struct Test { + template inline void triggerTest (Args&&... fargs) { } +}; + +struct TestPickled : Test { + template void triggerTest (Args&&... fargs) { + [=](Args... as) { + Test::triggerTest (as...); + } (); + } +}; + +int main() +{ + TestPickled test; + test.triggerTest (); + return 0; +}