16bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// RUN: %clang_cc1 -g -emit-llvm < %s | FileCheck %s
26bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
36bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// Check that, just because we emitted a function from a different file doesn't
46bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// mean we insert a file-change inside the next function.
56bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
66bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: ret void, !dbg [[F1_LINE:![0-9]*]]
76bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: ret void, !dbg [[F2_LINE:![0-9]*]]
86bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: [[F1:![0-9]*]] = {{.*}} ; [ DW_TAG_subprogram ] {{.*}} [def] [f1]
96bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: [[F2:![0-9]*]] = {{.*}} ; [ DW_TAG_subprogram ] {{.*}} [def] [f2]
106bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: [[F1_LINE]] = {{.*}}, metadata [[F1]], null}
116bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// CHECK: [[F2_LINE]] = {{.*}}, metadata [[F2]], null}
126bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
136bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hinesvoid f1() {
146bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines}
156bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
166bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines# 2 "foo.c"
176bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
186bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hinesvoid f2() {
196bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines}
206bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines
21