// PR c++/69005 // { dg-do compile { target c++11 } } template T& declval(); template class function; template struct function<_Res(_Arg)> { function() noexcept { } function(const function&) { } template()(declval<_Arg>()))> function(_Functor) { } _Res operator()(_Arg) const; }; struct Foo { function Func; }; extern Foo exfoo; Foo f (exfoo);