// Copyright (C) 2001 Free Software Foundation | |
// Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> | |
// { dg-do compile } | |
template <class U> struct A | |
{ | |
template <class T> class B {}; // { dg-message "operator=|no known conversion" } | |
}; | |
template <template <class> class TT> void f() | |
{ | |
TT<int> y; | |
y = 0; // { dg-error "no match" } | |
} | |
template <class T> struct C | |
{ | |
void g() { f<A<T>::template B>(); } // { dg-message "required" } | |
}; | |
int main() | |
{ | |
C<int> c; | |
c.g(); // { dg-message "required" } | |
} |