1 // RUN: %clang -cc1 -debug-info-kind=constructor -emit-llvm %s -o - | FileCheck %s
2 
3 // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "A"
4 // CHECK-NOT:              DIFlagFwdDecl
5 // CHECK-SAME:             ){{$}}
6 struct A {};
7 void TestA() { A a; }
8 
9 // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "B"
10 // CHECK-SAME:             flags: DIFlagFwdDecl
11 struct B {
12   B();
13 };
14 void TestB() { B b; }
15 
16 // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "C"
17 // CHECK-NOT:              flags: DIFlagFwdDecl
18 // CHECK-SAME:             ){{$}}
19 struct C {
20   C() {}
21 };
22 void TestC() { C c; }
23 
24 // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "D"
25 // CHECK-NOT:              flags: DIFlagFwdDecl
26 // CHECK-SAME:             ){{$}}
27 struct D {
28   D();
29 };
30 D::D() {}
31