// Build don't link: | |
template <class T> class List; | |
template <class T> | |
struct ListIterator | |
{ | |
ListIterator (); | |
ListIterator (const ListIterator<T>& rhs); | |
}; | |
template <class T> | |
struct List | |
{ | |
void length () const { | |
for (ListIterator<T> li; li; ); // ERROR - used where a `bool' | |
} | |
}; | |
void test(List<int>& vals) | |
{ | |
vals.length(); // ERROR - instantiated from here | |
} |