Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.1/specs Configured with: ../configure --prefix=/usr --libdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java,pascal --host=i586-mandrake-linux-gnu --with-system-zlib Thread model: posix gcc version 3.3.1 (Mandrake Linux 9.2 3.3.1-2mdk) g++ -Wall -save-temps -c Testing.cpp Testing.cpp: In instantiation of `CDerived::SInternalDerived': Testing.cpp:46: instantiated from `static typename CBase >::SInternalBase* CDerived::_Create(const T&) [with T = int]' Testing.cpp:8: instantiated from `void CBase::Insert(const T&) [with T = int, DerivedT = CDerived]' Testing.cpp:54: instantiated from here Testing.cpp:15: error: `struct CBase >::SInternalBase' is protected Testing.cpp:46: error: within this context