1 | // RUN: %clang_cc1 %s -debug-info-kind=line-tables-only -fblocks -S -emit-llvm -o - | FileCheck %s |
2 | // RUN: %clang_cc1 %s -debug-info-kind=line-directives-only -fblocks -S -emit-llvm -o - | FileCheck %s |
3 | |
4 | struct A { |
5 | A(); |
6 | A(const A &); |
7 | ~A(); |
8 | }; |
9 | |
10 | void test() { |
11 | __block A a; |
12 | ^{ (void)a; }; |
13 | } |
14 | |
15 | // CHECK: !DISubprogram(name: "__Block_byref_object_copy_", |
16 | // CHECK-SAME: line: 11, |
17 | // CHECK-SAME: DISPFlagLocalToUnit | DISPFlagDefinition |
18 | // CHECK: !DISubprogram(name: "__Block_byref_object_dispose_", |
19 | // CHECK-SAME: line: 11, |
20 | // CHECK-SAME: DISPFlagLocalToUnit | DISPFlagDefinition |
21 | |