1 // Creating a shared reference does not leak the data to raw pointers.
main()2 fn main() { unsafe {
3 let x = &mut 0;
4 let raw = x as *mut _;
5 let x = &mut *x; // kill `raw`
6 let _y = &*x; // this should not activate `raw` again
7 let _val = *raw; //~ ERROR borrow stack
8 } }
9