blob: fd0d4f2bbbee785ac965f65682a115991e9949fe [file] [log] [blame]
// RUN: %clang_cc1 -triple i686-windows-pc -emit-llvm -o - -mconstructor-aliases -O1 -disable-llvm-passes %s | FileCheck %s
struct Base { virtual ~Base(); };
struct Derived : Base {
virtual ~Derived();
static Derived inst;
};
Base::~Base(){}
Derived::~Derived(){}
Derived Derived::inst;
// CHECK: @"??1Derived@@UAE@XZ" = dso_local unnamed_addr alias void (ptr), ptr @"??1Base@@UAE@XZ"
// CHECK: define dso_local x86_thiscallcc void @"??1Base@@UAE@XZ"
// CHECK: define internal void @"??__E?inst@Derived@@2U1@A@@YAXXZ"
// CHECK: call i32 @atexit(ptr @"??__F?inst@Derived@@2U1@A@@YAXXZ"
//
// CHECK: define internal void @"??__F?inst@Derived@@2U1@A@@YAXXZ"
// CHECK-NEXT: entry:
// CHECK-NEXT: call x86_thiscallcc void @"??1Derived@@UAE@XZ"