------- Comment #1 from pinskia at gcc dot gnu dot org 2006-07-26 00:23 ------- list<C>::iterator
You are missing typename in front of that. The corrected source is: #include <list> using namespace std; template <class C> class D1 : public list<C> { public: D1( void ) { typename list<C>::iterator it; } }; struct T { }; class D2 : public list<T> { public: D2( void ) { list<T>::iterator it; } }; -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28487