// RUN: %clang_cc1 -triple x86_64-apple-darwin -debug-info-kind=standalone -emit-llvm %s -o - | FileCheck %s

struct B {
// CHECK: ![[B:[0-9]+]] ={{.*}}!DICompositeType(tag: DW_TAG_structure_type, name: "B"
// CHECK-SAME:                             line: [[@LINE-2]],
// CHECK-SAME:                             size: 8,
// CHECK-NOT:                              offset:
// CHECK-NOT:                              DIFlagFwdDecl
// CHECK-SAME:                             elements: ![[BMEMBERS:[0-9]+]]
// CHECK-SAME:                             identifier:
// CHECK: ![[BMEMBERS]] = !{![[BB:[0-9]+]]}
  B(struct A *);
// CHECK: ![[BB]] = !DISubprogram(name: "B", scope: ![[B]]
// CHECK-SAME:                    line: [[@LINE-2]],
// CHECK-SAME:                    type: ![[TY:[0-9]+]],
// CHECK: ![[TY]] = !DISubroutineType(types: ![[ARGS:[0-9]+]])
// CHECK: ![[ARGS]] = !{null, ![[THIS:[0-9]+]], !{{[^,]+}}}
// CHECK: ![[THIS]] = !DIDerivedType(tag: DW_TAG_pointer_type,
// CHECK-SAME:                       baseType: ![[B]]
};

struct C {
 B b;
 C(struct A *);
 virtual ~C();
};

C::C(struct A *a)
  : b(a) {
}
