// In this test, foo.rs is compiled twice with different hashes tied to its // symbols thanks to the metadata flag. bar.rs then ensures that the memory locations // of foo's symbols are different even though they came from the same original source code. // This checks that the metadata flag is doing its job. // See https://github.com/rust-lang/rust/issues/14471 //@ ignore-cross-compile use run_make_support::{run, rust_lib_name, rustc}; fn main() { rustc().input("foo.rs").metadata("a").extra_filename("-a").run(); rustc().input("foo.rs").metadata("b").extra_filename("-b").run(); rustc() .input("bar.rs") .extern_("foo1", rust_lib_name("foo-a")) .extern_("foo2", rust_lib_name("foo-b")) .run(); run("bar"); }