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
4void fn();
5
6struct foo {
7  ~foo();
8};
9
10void 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