Skip to content

Commit f959039

Browse files
committed
Rework -Zremap-path-scope macro test with dependency check
1 parent fc0f0a8 commit f959039

15 files changed

+103
-9
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
//@ compile-flags: --remap-path-prefix={{src-base}}=remapped
2+
//@ compile-flags: -Zremap-path-scope=debuginfo
3+
4+
#[macro_export]
5+
macro_rules! my_file {
6+
() => { file!() }
7+
}
8+
9+
pub fn file() -> &'static str {
10+
file!()
11+
}
+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
//@ compile-flags: --remap-path-prefix={{src-base}}=remapped
2+
//@ compile-flags: -Zremap-path-scope=diagnostics
3+
4+
#[macro_export]
5+
macro_rules! my_file {
6+
() => { file!() }
7+
}
8+
9+
pub fn file() -> &'static str {
10+
file!()
11+
}
+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
//@ compile-flags: --remap-path-prefix={{src-base}}=remapped
2+
//@ compile-flags: -Zremap-path-scope=macro
3+
4+
#[macro_export]
5+
macro_rules! my_file {
6+
() => { file!() }
7+
}
8+
9+
pub fn file() -> &'static str {
10+
file!()
11+
}

tests/ui/errors/auxiliary/file.rs

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#[macro_export]
2+
macro_rules! my_file {
3+
() => { file!() }
4+
}
5+
6+
pub fn file() -> &'static str {
7+
file!()
8+
}

tests/ui/errors/remap-path-prefix-macro.normal.run.stdout

-1
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = remapped/errors/remap-path-prefix-macro.rs
2+
file::file() = $DIR/auxiliary/file.rs
3+
file!() = remapped/errors/remap-path-prefix-macro.rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = $DIR/remap-path-prefix-macro.rs
2+
file::file() = $DIR/auxiliary/file-debuginfo.rs
3+
file!() = $DIR/remap-path-prefix-macro.rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = $DIR/remap-path-prefix-macro.rs
2+
file::file() = $DIR/auxiliary/file-diag.rs
3+
file!() = $DIR/remap-path-prefix-macro.rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = $DIR/remap-path-prefix-macro.rs
2+
file::file() = remapped/errors/auxiliary/file-macro.rs
3+
file!() = $DIR/remap-path-prefix-macro.rs
+41-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,47 @@
1+
// This test exercises `-Zremap-path-scope`, macros (like file!()) and dependency.
2+
//
3+
// We test different combinations with/without remap in deps, with/without remap in
4+
// this crate but always in deps and always here but never in deps.
5+
16
//@ run-pass
27
//@ check-run-results
38

4-
//@ revisions: normal with-macro-scope without-macro-scope
5-
//@ compile-flags: --remap-path-prefix={{src-base}}=remapped
6-
//@ [with-macro-scope]compile-flags: -Zremap-path-scope=macro,diagnostics
7-
//@ [without-macro-scope]compile-flags: -Zremap-path-scope=diagnostics
8-
// no-remap-src-base: Manually remap, so the remapped path remains in .stderr file.
9+
//@ revisions: with-diag-in-deps with-macro-in-deps with-debuginfo-in-deps
10+
//@ revisions: only-diag-in-deps only-macro-in-deps only-debuginfo-in-deps
11+
//@ revisions: not-macro-in-deps
12+
13+
//@[with-diag-in-deps] compile-flags: --remap-path-prefix={{src-base}}=remapped
14+
//@[with-macro-in-deps] compile-flags: --remap-path-prefix={{src-base}}=remapped
15+
//@[with-debuginfo-in-deps] compile-flags: --remap-path-prefix={{src-base}}=remapped
16+
//@[not-macro-in-deps] compile-flags: --remap-path-prefix={{src-base}}=remapped
17+
18+
//@[with-diag-in-deps] compile-flags: -Zremap-path-scope=diagnostics
19+
//@[with-macro-in-deps] compile-flags: -Zremap-path-scope=macro
20+
//@[with-debuginfo-in-deps] compile-flags: -Zremap-path-scope=debuginfo
21+
//@[not-macro-in-deps] compile-flags: -Zremap-path-scope=macro
22+
23+
//@[with-diag-in-deps] aux-build:file-diag.rs
24+
//@[with-macro-in-deps] aux-build:file-macro.rs
25+
//@[with-debuginfo-in-deps] aux-build:file-debuginfo.rs
26+
//@[only-diag-in-deps] aux-build:file-diag.rs
27+
//@[only-macro-in-deps] aux-build:file-macro.rs
28+
//@[only-debuginfo-in-deps] aux-build:file-debuginfo.rs
29+
//@[not-macro-in-deps] aux-build:file.rs
30+
31+
#[cfg(any(with_diag_in_deps, only_diag_in_deps))]
32+
extern crate file_diag as file;
33+
34+
#[cfg(any(with_macro_in_deps, only_macro_in_deps))]
35+
extern crate file_macro as file;
36+
37+
#[cfg(any(with_debuginfo_in_deps, only_debuginfo_in_deps))]
38+
extern crate file_debuginfo as file;
39+
40+
#[cfg(not_macro_in_deps)]
41+
extern crate file;
942

1043
fn main() {
11-
println!("{}", file!());
44+
println!("file::my_file!() = {}", file::my_file!());
45+
println!("file::file() = {}", file::file());
46+
println!("file!() = {}", file!());
1247
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = $DIR/remap-path-prefix-macro.rs
2+
file::file() = $DIR/auxiliary/file-debuginfo.rs
3+
file!() = $DIR/remap-path-prefix-macro.rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = $DIR/remap-path-prefix-macro.rs
2+
file::file() = $DIR/auxiliary/file-diag.rs
3+
file!() = $DIR/remap-path-prefix-macro.rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file::my_file!() = remapped/errors/remap-path-prefix-macro.rs
2+
file::file() = remapped/errors/auxiliary/file-macro.rs
3+
file!() = remapped/errors/remap-path-prefix-macro.rs

tests/ui/errors/remap-path-prefix-macro.with-macro-scope.run.stdout

-1
This file was deleted.

tests/ui/errors/remap-path-prefix-macro.without-macro-scope.run.stdout

-1
This file was deleted.

0 commit comments

Comments
 (0)