1 // PR c++/64848 2 // { dg-do compile { target c++11 } } 3 4 template<typename Signature> 5 struct function; 6 7 template<typename R, typename... Args> 8 struct function<R (Args...)> 9 { 10 template<typename F> 11 function(const F&) { } 12 }; 13 14 template<typename T> 15 class A 16 { 17 T someVar; 18 }; 19 20 template<typename T> 21 class B 22 { 23 int x; 24 25 function<A<double>(A<int>&)> someLambda = [&](A<int>& aInt){ 26 int xVar = x; 27 A<double> aRet; 28 return aRet; 29 }; 30 }; 31 32 B<int> a; 33