1 template <class T>
2 struct Class0 {
3   Class0();
4   Class0(const Class0<T> &);
5   ~Class0();
6   T *p;
7 };
8 
9 struct S0 {
10   id x;
11 };
12 
13 Class0<S0> returnNonTrivial();
14