rust/tests/fail/stacked_borrows/shr_frozen_violation1.rs

16 lines
279 B
Rust
Raw Normal View History

fn foo(x: &mut i32) -> i32 {
*x = 5;
unknown_code(&*x);
*x // must return 5
}
fn main() {
println!("{}", foo(&mut 0));
}
fn unknown_code(x: &i32) {
unsafe {
*(x as *const i32 as *mut i32) = 7;
} //~ ERROR only grants SharedReadOnly permission
}