Home | History | Annotate | Download | only in CodeGenCXX
      1 // RUN: %clang_cc1 -emit-llvm -o - %s
      2 
      3 struct A {
      4    virtual ~A();
      5 };
      6 
      7 template <typename Ty>
      8 struct B : public A {
      9    ~B () { delete [] val; }
     10 private:
     11      Ty* val;
     12 };
     13 
     14 template <typename Ty>
     15 struct C : public A {
     16    C ();
     17    ~C ();
     18 };
     19 
     20 template <typename Ty>
     21 struct D : public A {
     22      D () {}
     23    private:
     24      B<C<Ty> > blocks;
     25 };
     26 
     27 template class D<double>;
     28