29 lines · cpp
1// RUN: %clang_cc1 -triple %itanium_abi_triple -emit-llvm -o - %s2// RUN: %clang_cc1 -triple %ms_abi_triple -fno-rtti -emit-llvm -o - %s3 4struct A {5 virtual ~A();6};7 8template <typename Ty>9struct B : public A {10 ~B () { delete [] val; }11private:12 Ty* val;13};14 15template <typename Ty>16struct C : public A {17 C ();18 ~C ();19};20 21template <typename Ty>22struct D : public A {23 D () {}24 private:25 B<C<Ty> > blocks;26};27 28template class D<double>;29