// In some cases, linking libraries with GNU used to fail due to how // `std` and `core` possess a circular dependency with one another, and // how the linker could not go back through its symbol processing to resolve // the circular link. #49316 fixed this, and this test reproduces a minimal // version of one such linking attempt which used to fail. // See https://github.com/rust-lang/rust/issues/18807 //@ ignore-cross-compile use run_make_support::{is_darwin, is_windows, rustc}; fn main() { rustc().input("bar.rs").run(); let mut rustc_foo = rustc(); rustc_foo.input("foo.rs"); let mut rustc_foo_panic = rustc(); rustc_foo_panic.input("foo.rs").panic("abort"); if !is_darwin() && !is_windows() { rustc_foo.arg("-Clink-args=-Wl,--no-undefined"); rustc_foo_panic.arg("-Clink-args=-Wl,--no-undefined"); } rustc_foo.run(); rustc_foo_panic.run(); }