1 // PR c++/78446 2 // { dg-do compile { target c++11 } } 3 4 struct A { void operator()(); }; 5 struct B { void operator()(); }; 6 struct C : A, B {}; 7 8 template<class T> 9 decltype(T()()) foo(int); 10 11 template<class> int foo(...); 12 13 using type = decltype(foo<C>(0)); 14 using type = int; 15