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