|
1 | 1 | error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permission at ALLOC[0x4], but that tag does not exist in the borrow stack for this location
|
2 | 2 | --> $DIR/return_invalid_shr_option.rs:LL:CC
|
3 | 3 | |
|
4 |
| -LL | Some(_x) => {} |
5 |
| - | ^^ |
6 |
| - | | |
7 |
| - | trying to retag from <TAG> for SharedReadOnly permission at ALLOC[0x4], but that tag does not exist in the borrow stack for this location |
8 |
| - | this error occurs as part of retag at ALLOC[0x4..0x8] |
| 4 | +LL | ret |
| 5 | + | ^^^ |
| 6 | + | | |
| 7 | + | trying to retag from <TAG> for SharedReadOnly permission at ALLOC[0x4], but that tag does not exist in the borrow stack for this location |
| 8 | + | this error occurs as part of retag at ALLOC[0x4..0x8] |
9 | 9 | |
|
10 | 10 | = help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
|
11 | 11 | = help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information
|
12 | 12 | help: <TAG> was created by a SharedReadOnly retag at offsets [0x4..0x8]
|
13 | 13 | --> $DIR/return_invalid_shr_option.rs:LL:CC
|
14 | 14 | |
|
15 | 15 | LL | let ret = Some(unsafe { &(*xraw).1 });
|
16 |
| - | ^^^^^^^^^^ |
| 16 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
17 | 17 | help: <TAG> was later invalidated at offsets [0x0..0x8] by a write access
|
18 | 18 | --> $DIR/return_invalid_shr_option.rs:LL:CC
|
19 | 19 | |
|
20 | 20 | LL | unsafe { *xraw = (42, 23) }; // unfreeze
|
21 | 21 | | ^^^^^^^^^^^^^^^^
|
22 | 22 | = note: BACKTRACE:
|
23 |
| - = note: inside `main` at $DIR/return_invalid_shr_option.rs:LL:CC |
| 23 | + = note: inside `foo` at $DIR/return_invalid_shr_option.rs:LL:CC |
| 24 | +note: inside `main` at $DIR/return_invalid_shr_option.rs:LL:CC |
| 25 | + --> $DIR/return_invalid_shr_option.rs:LL:CC |
| 26 | + | |
| 27 | +LL | match foo(&mut (1, 2)) { |
| 28 | + | ^^^^^^^^^^^^^^^^ |
24 | 29 |
|
25 | 30 | note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace
|
26 | 31 |
|
|
0 commit comments