rewrite panic-impl-transitive
This commit is contained in:
parent
3cb0030fe9
commit
cae17ff42b
@ -192,7 +192,6 @@ run-make/output-with-hyphens/Makefile
|
|||||||
run-make/override-aliased-flags/Makefile
|
run-make/override-aliased-flags/Makefile
|
||||||
run-make/overwrite-input/Makefile
|
run-make/overwrite-input/Makefile
|
||||||
run-make/panic-abort-eh_frame/Makefile
|
run-make/panic-abort-eh_frame/Makefile
|
||||||
run-make/panic-impl-transitive/Makefile
|
|
||||||
run-make/pass-linker-flags-flavor/Makefile
|
run-make/pass-linker-flags-flavor/Makefile
|
||||||
run-make/pass-linker-flags-from-dep/Makefile
|
run-make/pass-linker-flags-from-dep/Makefile
|
||||||
run-make/pass-linker-flags/Makefile
|
run-make/pass-linker-flags/Makefile
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
include ../tools.mk
|
|
||||||
|
|
||||||
# NOTE we use --emit=llvm-ir to avoid running the linker (linking will fail because there's no main
|
|
||||||
# in this crate)
|
|
||||||
all:
|
|
||||||
$(RUSTC) panic-impl-provider.rs
|
|
||||||
$(RUSTC) panic-impl-consumer.rs -C panic=abort --emit=llvm-ir -L $(TMPDIR)
|
|
14
tests/run-make/panic-impl-transitive/rmake.rs
Normal file
14
tests/run-make/panic-impl-transitive/rmake.rs
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
// In Rust programs where the standard library is unavailable (#![no_std]), we may be interested
|
||||||
|
// in customizing how panics are handled. Here, the provider specifies that panics should be handled
|
||||||
|
// by entering an infinite loop. This test checks that this panic implementation can be transitively
|
||||||
|
// provided by an external crate.
|
||||||
|
// --emit=llvm-ir is used to avoid running the linker, as linking will fail due to the lack of main
|
||||||
|
// function in the crate.
|
||||||
|
// See https://github.com/rust-lang/rust/pull/50338
|
||||||
|
|
||||||
|
use run_make_support::{rustc, tmp_dir};
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
rustc().input("panic-impl-provider.rs").run();
|
||||||
|
rustc().input("panic-impl-consumer.rs").panic("abort").emit("llvm-ir").library_search_path(tmp_dir()).run();
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user