[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / CodeGenCXX / debug-info-ms-dtor-thunks.cpp
blob701874580d07ddfc2e363bae0552ff0dcd924ad8
1 // RUN: %clang_cc1 -triple i686--windows -emit-llvm -debug-info-kind=line-tables-only -x c++ %s -fms-extensions -o - | FileCheck %s
2 // RUN: %clang_cc1 -triple i686--windows -emit-llvm -debug-info-kind=line-directives-only -x c++ %s -fms-extensions -o - | FileCheck %s
4 struct __declspec(dllexport) S { virtual ~S(); };
5 struct __declspec(dllexport) T { virtual ~T(); };
6 struct __declspec(dllexport) U : S, T { virtual ~U(); };
8 // CHECK-LABEL: define {{.*}} @"??_GS@@UAEPAXI@Z"
9 // CHECK: call x86_thiscallcc void @"??1S@@UAE@XZ"(ptr {{[^,]*}} %this1){{.*}}!dbg !{{[0-9]+}}
11 // CHECK-LABEL: define {{.*}} @"??_GT@@UAEPAXI@Z"
12 // CHECK: call x86_thiscallcc void @"??1T@@UAE@XZ"(ptr {{[^,]*}} %this1){{.*}}!dbg !{{[0-9]+}}
14 // CHECK-LABEL: define {{.*}} @"??_GU@@UAEPAXI@Z"
15 // CHECK: call x86_thiscallcc void @"??1U@@UAE@XZ"(ptr {{[^,]*}} %this1){{.*}}!dbg !{{[0-9]+}}