Why is this code not valid?
#include
template
class A {
public:
A() { v.clear(); }
std::vector *&
You need to add typename as the types depend on each other and the compiler can't figure out if it really is a type.
However, on gcc 4.5.0 i get a more concise error message:
test.cc:8:3: error: need ‘typename’ before ‘std::vector*>::const_iterator’ because ‘std::vector*>’ is a dependent scope