1 // Copyright (C) 2001 Free Software Foundation 2 // Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> 3 // { dg-do compile } 4 5 template <class U> struct A 6 { 7 template <class T> class B {}; // { dg-message "operator=|no known conversion" } 8 }; 9 f()10template <template <class> class TT> void f() 11 { 12 TT<int> y; 13 y = 0; // { dg-error "no match" } 14 } 15 16 template <class T> struct C 17 { gC18 void g() { f<A<T>::template B>(); } // { dg-message "required" } 19 }; 20 main()21int main() 22 { 23 C<int> c; 24 c.g(); // { dg-message "required" } 25 } 26