virtual-destructor-calls.cpp revision a5728872c7702ddd09537c95bc3cbd20e1f2fb09
1// RUN: %clang_cc1 -emit-llvm %s -o - -triple=x86_64-apple-darwin10 | FileCheck %s
2
3struct A {
4  virtual ~A();
5};
6
7struct B : A {
8  virtual ~B();
9};
10
11// Deleting dtor.
12// CHECK: define void @_ZN1BD0Ev
13// CHECK: call void @_ZN1AD2Ev
14// check: call void @_ZdlPv
15
16// Complete dtor.
17// CHECK: define void @_ZN1BD1Ev
18// CHECK: call void @_ZN1AD2Ev
19
20// Base dtor.
21// CHECK: define void @_ZN1BD2Ev
22// CHECK: call void @_ZN1AD2Ev
23
24B::~B() { }
25