1// RUN: %clang -emit-llvm -S -g %s -o - | FileCheck %s
2
3// Radar 8396182
4// There is only one lexical block, but we need a DILexicalBlock and two
5// DILexicalBlockFile to correctly represent file info. This means we have
6// two lexical blocks shown as the latter is also tagged as a lexical block.
7
8int foo() {
9  int i = 1;
10# 4 "m.c"
11# 1 "m.h" 1
12  int j = 2;
13# 2 "m.h"
14# 5 "m.c" 2
15  return i + j;
16}
17
18// CHECK: DW_TAG_lexical_block
19// CHECK: DW_TAG_lexical_block
20// CHECK: !"m.h"
21// CHECK: DW_TAG_lexical_block
22// CHECK: !"m.c"
23// CHECK-NOT: DW_TAG_lexical_block
24