2 // Origin: Ivan Godard <igodard at pacbell dot net>
3 // PR c++/17447: Detect parameters of dependent types even in templates
5 struct B; // { dg-error "forward declaration" }
6 template<typename T> struct A {
8 friend A& operator <<(A& a, B b) { return a; } // { dg-error "incomplete" }
9 friend A& operator <<(A& a, T b) { return a; }
11 void foo1(B b) {} // { dg-error "incomplete" }
14 B foo2(void) {} // { dg-error "incomplete" }