1 // PR c++/57327 2 3 template<class T> 4 struct A {}; 5 6 template<class T> f(A<T> &)7void f(A<T>&) {} 8 9 struct B : A<long> {}; 10 11 struct C : A<char> {}; 12 13 struct D : B, C {}; 14 main()15int main() 16 { 17 D d; 18 f(d); // { dg-error "no matching" } 19 } // { dg-message "'A<T>' is an ambiguous base" "" { target *-*-* } .-1 } 20