1 // This makes a ref that was passed to us via &mut alias with things it should not alias with
2 fn retarget(x: &mut &u32, target: &mut u32) {
4 *x = &mut *(target as *mut _);
10 let mut target_alias = &42; // initial dummy value
11 retarget(&mut target_alias, target);
12 // now `target_alias` points to the same thing as `target`
14 let _val = *target_alias; //~ ERROR: /read access .* tag does not exist in the borrow stack/