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)13 S bar(const S& s, const T& t) {
14   return s;
15 }
16 
17 template<class S, class T>
foo()18 void foo() {
19   A a;
20   B b;
21   a << bar(b.size(), C());	// { dg-error "no match" }
22 }
23