// PR c++/49785 // { dg-do compile { target c++11 } } template struct B { }; template class A; template struct A : public B { struct C {}; template A (D, C = C ()) { } R operator () (...); }; template auto operator >> (A , T)->A { []() {}; } int main () { A a = [](int, int) {}; auto b = []{}; (a >> b) (3, 5); }