| error: Undefined Behavior: not granting access to tag <TAG> because that would remove [Unique for <TAG>] which is strongly protected |
| --> tests/fail/both_borrows/illegal_write6.rs:LL:CC |
| | |
| LL | unsafe { *y = 2 }; |
| | ^^^^^^ not granting access to tag <TAG> because that would remove [Unique for <TAG>] which is strongly protected |
| | |
| = 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 SharedReadWrite retag at offsets [0x0..0x4] |
| --> tests/fail/both_borrows/illegal_write6.rs:LL:CC |
| | |
| LL | let p = x as *mut u32; |
| | ^ |
| help: <TAG> is this argument |
| --> tests/fail/both_borrows/illegal_write6.rs:LL:CC |
| | |
| LL | fn foo(a: &mut u32, y: *mut u32) -> u32 { |
| | ^ |
| = note: BACKTRACE (of the first span): |
| = note: inside `foo` at tests/fail/both_borrows/illegal_write6.rs:LL:CC |
| note: inside `main` |
| --> tests/fail/both_borrows/illegal_write6.rs:LL:CC |
| | |
| LL | foo(x, p); |
| | ^^^^^^^^^ |
| |
| note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace |
| |
| error: aborting due to 1 previous error |
| |