| error: Undefined Behavior: not granting access to tag <TAG> because that would remove [Unique for <TAG>] which is strongly protected because it is an argument of call ID |
| --> $DIR/aliasing_mut1.rs:LL:CC |
| | |
| LL | pub fn safe(x: &mut i32, y: &mut i32) { |
| | ^ not granting access to tag <TAG> because that would remove [Unique for <TAG>] which is strongly protected because it is an argument of call ID |
| | |
| = help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental |
| = help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information |
| help: <TAG> was created by a Unique retag at offsets [0x0..0x4] |
| --> $DIR/aliasing_mut1.rs:LL:CC |
| | |
| LL | let xraw: *mut i32 = unsafe { mem::transmute(&mut x) }; |
| | ^^^^^^ |
| help: <TAG> is this argument |
| --> $DIR/aliasing_mut1.rs:LL:CC |
| | |
| LL | pub fn safe(x: &mut i32, y: &mut i32) { |
| | ^ |
| = note: BACKTRACE (of the first span): |
| = note: inside `safe` at $DIR/aliasing_mut1.rs:LL:CC |
| note: inside `main` |
| --> $DIR/aliasing_mut1.rs:LL:CC |
| | |
| LL | safe_raw(xraw, xraw); |
| | ^^^^^^^^^^^^^^^^^^^^ |
| |
| note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace |
| |
| error: aborting due to 1 previous error |
| |