summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm')
-rw-r--r--clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm19
1 files changed, 19 insertions, 0 deletions
diff --git a/clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm b/clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm
new file mode 100644
index 00000000000..a1b120608cd
--- /dev/null
+++ b/clang/test/CodeGenObjCXX/debug-info-block-capture-this.mm
@@ -0,0 +1,19 @@
+// RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++14 -fblocks -debug-info-kind=standalone -emit-llvm %s -o - | FileCheck %s
+struct test
+{
+ int func() { return 1; }
+ int (^block)() = ^{ return func(); };
+};
+
+int main(int argc, const char * argv[]) {
+ test t;
+ return t.block();
+}
+
+// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "__block_literal_1",
+// CHECK-SAME: elements: ![[ELEMS:.*]])
+// CHECK: ![[ELEMS]] = !{{{.*}}, ![[THIS:[0-9]+]]}
+// CHECK: ![[THIS]] = !DIDerivedType(tag: DW_TAG_member, name: "this",
+// CHECK-SAME: baseType: !"_ZTS4test",
+
+
OpenPOWER on IntegriCloud