1 | // RUN: %clang_cc1 -triple x86_64-unknown-windows-gnu -fcxx-exceptions -fexceptions -debug-info-kind=line-tables-only -fblocks -emit-llvm %s -o - | FileCheck %s |
2 | // RUN: %clang_cc1 -triple x86_64-unknown-windows-gnu -fcxx-exceptions -fexceptions -debug-info-kind=line-directives-only -fblocks -emit-llvm %s -o - | FileCheck %s |
3 | |
4 | void fn(); |
5 | |
6 | struct foo { |
7 | ~foo(); |
8 | }; |
9 | |
10 | void f1() { |
11 | ^{ |
12 | foo f; |
13 | fn(); |
14 | // CHECK: cleanup, !dbg [[DBG_F1:![0-9]*]] |
15 | #line 100 |
16 | }(); |
17 | } |
18 | |
19 | // CHECK-LABEL: define internal {{.*}}i8* @"\01-[TNSObject init]" |
20 | @implementation TNSObject |
21 | - (id)init |
22 | { |
23 | foo f; |
24 | fn(); |
25 | // CHECK: cleanup, !dbg [[DBG_TNSO:![0-9]*]] |
26 | #line 200 |
27 | } |
28 | @end |
29 | |
30 | // CHECK: [[DBG_F1]] = !DILocation(line: 100, |
31 | // CHECK: [[DBG_TNSO]] = !DILocation(line: 200, |
32 | |