1 // PR c++/56438 2 3 struct A { }; 4 A& operator<<(A&, const char*); 5 6 struct B { 7 int size(); 8 }; 9 10 struct C { }; 11 12 template <class S, class T> bar(const S & s,const T & t)13S bar(const S& s, const T& t) { 14 return s; 15 } 16 17 template<class S, class T> foo()18void foo() { 19 A a; 20 B b; 21 a << bar(b.size(), C()); // { dg-error "no match" } 22 } 23