mirror of https://github.com/rust-lang/rust
25 lines
599 B
Rust
25 lines
599 B
Rust
// Check that rust_eh_personality can have a different type signature than the
|
|
// one hardcoded in the compiler. Regression test for #70117. Used to fail with:
|
|
//
|
|
// Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
|
|
//
|
|
//@ build-pass
|
|
//@ compile-flags: --crate-type=lib -Ccodegen-units=1
|
|
#![no_std]
|
|
#![panic_runtime]
|
|
#![feature(panic_runtime)]
|
|
#![feature(rustc_attrs)]
|
|
|
|
pub struct DropMe;
|
|
|
|
impl Drop for DropMe {
|
|
fn drop(&mut self) {}
|
|
}
|
|
|
|
pub fn test(_: DropMe) {
|
|
unreachable!();
|
|
}
|
|
|
|
#[rustc_std_internal_symbol]
|
|
pub unsafe extern "C" fn rust_eh_personality() {}
|