34 lines
1 KiB
Rust
34 lines
1 KiB
Rust
//@ needs-symlink
|
|
//@ ignore-cross-compile
|
|
|
|
// Tests that the multiple candidate dependencies diagnostic prints relative
|
|
// paths if a relative library path was passed in.
|
|
|
|
use run_make_support::{bare_rustc, diff, rfs, rustc};
|
|
|
|
fn main() {
|
|
// Check that relative paths are preserved in the diagnostic
|
|
rfs::create_dir("mylibs");
|
|
rustc().input("crateresolve1-1.rs").out_dir("mylibs").extra_filename("-1").run();
|
|
rustc().input("crateresolve1-2.rs").out_dir("mylibs").extra_filename("-2").run();
|
|
check("./mylibs");
|
|
|
|
// Check that symlinks aren't followed when printing the diagnostic
|
|
rfs::rename("mylibs", "original");
|
|
rfs::symlink_dir("original", "mylibs");
|
|
check("./mylibs");
|
|
}
|
|
|
|
fn check(library_path: &str) {
|
|
let out = rustc()
|
|
.input("multiple-candidates.rs")
|
|
.library_search_path(library_path)
|
|
.ui_testing()
|
|
.run_fail()
|
|
.stderr_utf8();
|
|
diff()
|
|
.expected_file("multiple-candidates.stderr")
|
|
.normalize(r"\\", "/")
|
|
.actual_text("(rustc)", &out)
|
|
.run();
|
|
}
|