1 // RUN: %clang -emit-llvm -S -g %s -o - | FileCheck %s
2
3 // Radar 8396182
4 // There are no lexical blocks, but we need two DILexicalBlockFiles to
5 // correctly represent file info.
6
foo()7 int foo() {
8 int i = 1;
9 # 4 "m.c"
10 # 1 "m.h" 1
11 int j = 2;
12 # 2 "m.h"
13 # 5 "m.c" 2
14 return i + j;
15 }
16
17 // CHECK-NOT: !DILexicalBlock
18 // CHECK: !DILexicalBlockFile({{.*}}file: ![[MH:[0-9]+]]
19 // CHECK: !DIFile(filename: "m.h"
20 // CHECK: !DILexicalBlockFile({{.*}}file: ![[MC:[0-9]+]]
21 // CHECK: !DIFile(filename: "m.c"
22 // CHECK-NOT: !DILexicalBlock
23