]> git.lizzy.rs Git - rust.git/blob - src/test/incremental/source_loc_macros.rs
Rollup merge of #74204 - ayazhafiz:i/74120, r=eddyb
[rust.git] / src / test / incremental / source_loc_macros.rs
1 // This test makes sure that different expansions of the file!(), line!(),
2 // column!() macros get picked up by the incr. comp. hash.
3
4 // revisions:rpass1 rpass2
5
6 // compile-flags: -Z query-dep-graph
7
8 #![feature(rustc_attrs)]
9
10 #[rustc_clean(label="hir_owner", cfg="rpass2")]
11 #[rustc_clean(label="hir_owner_nodes", cfg="rpass2")]
12 fn line_same() {
13     let _ = line!();
14 }
15
16 #[rustc_clean(label="hir_owner", cfg="rpass2")]
17 #[rustc_clean(label="hir_owner_nodes", cfg="rpass2")]
18 fn col_same() {
19     let _ = column!();
20 }
21
22 #[rustc_clean(label="hir_owner", cfg="rpass2")]
23 #[rustc_clean(label="hir_owner_nodes", cfg="rpass2")]
24 fn file_same() {
25     let _ = file!();
26 }
27
28 #[rustc_clean(label="hir_owner", cfg="rpass2")]
29 #[rustc_dirty(label="hir_owner_nodes", cfg="rpass2")]
30 fn line_different() {
31     #[cfg(rpass1)]
32     {
33         let _ = line!();
34     }
35     #[cfg(rpass2)]
36     {
37         let _ = line!();
38     }
39 }
40
41 #[rustc_clean(label="hir_owner", cfg="rpass2")]
42 #[rustc_dirty(label="hir_owner_nodes", cfg="rpass2")]
43 fn col_different() {
44     #[cfg(rpass1)]
45     {
46         let _ = column!();
47     }
48     #[cfg(rpass2)]
49     {
50         let _ =        column!();
51     }
52 }
53
54 fn main() {
55     line_same();
56     line_different();
57     col_same();
58     col_different();
59     file_same();
60 }