f4a2713ac8
Change-Id: Ia40e9ffdf29b5dab2f122f673ff6802a58bc690f
27 lines
362 B
C++
27 lines
362 B
C++
// RUN: %clang_cc1 -emit-llvm -o - %s
|
|
|
|
struct A {
|
|
virtual ~A();
|
|
};
|
|
|
|
template <typename Ty>
|
|
struct B : public A {
|
|
~B () { delete [] val; }
|
|
private:
|
|
Ty* val;
|
|
};
|
|
|
|
template <typename Ty>
|
|
struct C : public A {
|
|
C ();
|
|
~C ();
|
|
};
|
|
|
|
template <typename Ty>
|
|
struct D : public A {
|
|
D () {}
|
|
private:
|
|
B<C<Ty> > blocks;
|
|
};
|
|
|
|
template class D<double>;
|