mirror of
https://git.proxmox.com/git/rustc
synced 2025-05-02 19:32:01 +00:00
18 lines
275 B
Rust
18 lines
275 B
Rust
// run-pass
|
|
// Check that safe fns are not a subtype of unsafe fns.
|
|
|
|
|
|
fn foo(x: i32) -> i32 {
|
|
x * 22
|
|
}
|
|
|
|
fn bar(x: fn(i32) -> i32) -> unsafe fn(i32) -> i32 {
|
|
x // OK, coercion!
|
|
}
|
|
|
|
fn main() {
|
|
let f = bar(foo);
|
|
let x = unsafe { f(2) };
|
|
assert_eq!(x, 44);
|
|
}
|