diff options
Diffstat (limited to 'tests/run-make/panic-impl-transitive')
-rw-r--r-- | tests/run-make/panic-impl-transitive/Makefile | 7 | ||||
-rw-r--r-- | tests/run-make/panic-impl-transitive/panic-impl-consumer.rs | 5 | ||||
-rw-r--r-- | tests/run-make/panic-impl-transitive/panic-impl-provider.rs | 9 |
3 files changed, 21 insertions, 0 deletions
diff --git a/tests/run-make/panic-impl-transitive/Makefile b/tests/run-make/panic-impl-transitive/Makefile new file mode 100644 index 000000000..9a271a22e --- /dev/null +++ b/tests/run-make/panic-impl-transitive/Makefile @@ -0,0 +1,7 @@ +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) diff --git a/tests/run-make/panic-impl-transitive/panic-impl-consumer.rs b/tests/run-make/panic-impl-transitive/panic-impl-consumer.rs new file mode 100644 index 000000000..82a98b12d --- /dev/null +++ b/tests/run-make/panic-impl-transitive/panic-impl-consumer.rs @@ -0,0 +1,5 @@ +#![no_std] +#![no_main] + +// this crate provides the `panic_impl` lang item so we don't need to define it here +extern crate panic_impl_provider; diff --git a/tests/run-make/panic-impl-transitive/panic-impl-provider.rs b/tests/run-make/panic-impl-transitive/panic-impl-provider.rs new file mode 100644 index 000000000..f1b9873c8 --- /dev/null +++ b/tests/run-make/panic-impl-transitive/panic-impl-provider.rs @@ -0,0 +1,9 @@ +#![crate_type = "rlib"] +#![no_std] + +use core::panic::PanicInfo; + +#[panic_handler] +fn panic(info: &PanicInfo) -> ! { + loop {} +} |