1 | // RUN: %clang_cc1 -emit-llvm -triple i686-pc-windows-msvc19.0.24213 -gcodeview -debug-info-kind=limited -std=c++14 %s -o - | FileCheck %s |
2 | // PR33997. |
3 | struct WithDtor { |
4 | ~WithDtor(); |
5 | }; |
6 | struct Base { |
7 | Base(WithDtor); |
8 | }; |
9 | class Forward : Base { |
10 | using Base::Base; |
11 | }; |
12 | class A : Forward { |
13 | A(); |
14 | }; |
15 | class B : Forward { |
16 | B(); |
17 | }; |
18 | A::A() : Forward(WithDtor()) {} |
19 | |
20 | B::B() : Forward(WithDtor()) {} |
21 | |
22 | // CHECK: define{{.*}}A |
23 | // CHECK-NOT: {{ ret }} |
24 | // CHECK: store %class.Forward* % |
25 | // CHECK-SAME: %class.Forward** % |
26 | // CHECK-SAME: !dbg ![[INL:[0-9]+]] |
27 | |
28 | // CHECK: ![[INL]] = !DILocation(line: 10, scope: ![[SP:[0-9]+]], inlinedAt: |
29 | // CHECK: ![[SP]] = distinct !DISubprogram(name: "Base", {{.*}} DISPFlagDefinition |
30 | |