]> git.proxmox.com Git - rustc.git/blame - src/test/ui/issues/issue-40288.rs
New upstream version 1.49.0+dfsg1
[rustc.git] / src / test / ui / issues / issue-40288.rs
CommitLineData
8bb4bdeb
XL
1fn save_ref<'a>(refr: &'a i32, to: &mut [&'a i32]) {
2 for val in &mut *to {
3 *val = refr;
4 }
5}
6
7fn main() {
8 let ref init = 0i32;
9 let ref mut refr = 1i32;
10
11 let mut out = [init];
12
13 save_ref(&*refr, &mut out);
14
15 // This shouldn't be allowed as `refr` is borrowed
16 *refr = 3; //~ ERROR cannot assign to `*refr` because it is borrowed
17
18 // Prints 3?!
19 println!("{:?}", out[0]);
20}