1 // PR c++/83817 2 // { dg-do compile { target c++14 } } 3 4 struct A; 5 struct B { template <typename> using C = A; }; 6 struct D : B { struct F { typedef C<char> E; }; }; 7 struct G { 8 struct I { I (D, A &); } h; 9 D::F::E &k (); 10 D j; GG11 G (G &&) : h (j, k ()) {} 12 }; 13 struct N { G l; }; 14 typedef N (*M)(N &); 15 struct H { const char *o; M s; }; 16 N foo (N &); 17 H r { "", [](auto &x) { return foo (x); }}; 18