// { dg-do assemble } // GROUPS passed templates template class T_Base {}; template class T_Derived : public T_Base {}; class Base { public: Base (float name); }; class Derived : public Base { private: T_Base* data_; // Fix (1): Change date_ from T_Base* to T_Derived* public: Derived (float name); }; Derived:: Derived (float name) : Base(name), data_(new T_Derived()) {}