1 // { dg-do assemble  }
2 // GROUPS passed templates
3 template <class T>
4 class T_Base
5 {};
6 
7 template <class T>
8 class T_Derived
9 : public T_Base<T>
10 {};
11 
12 
13 class Base
14 {
15 public:
16   Base (float name);
17 };
18 
19 class Derived
20 : public Base
21 {
22 private:
23   T_Base<int>*	data_;	// Fix (1): Change date_ from T_Base<int>* to T_Derived<int>*
24 
25 public:
26   Derived (float name);
27 };
28 
29 
30 Derived::
Derived(float name)31 Derived (float name)
32 :  Base(name),
33    data_(new T_Derived<int>())
34 {}
35