Fix issue #51515 and update test

This commit is contained in:
ashtneoi 2018-07-09 13:33:57 -07:00
parent a49b75d2f3
commit dc8ae26c1e
3 changed files with 16 additions and 4 deletions

View file

@ -12,7 +12,13 @@
fn main() {
let foo = &16;
//~^ HELP consider changing this to be a mutable reference
//~| SUGGESTION &mut 16
*foo = 32;
//~^ ERROR cannot assign to `*foo` which is behind a `&` reference
let bar = foo;
//~^ HELP consider changing this to be a mutable reference
//~| SUGGESTION &mut i32
*bar = 64;
//~^ ERROR cannot assign to `*bar` which is behind a `&` reference
}

View file

@ -1,14 +1,18 @@
error[E0594]: cannot assign to `*foo` which is behind a `&` reference
--> $DIR/issue-51515.rs:15:5
--> $DIR/issue-51515.rs:17:5
|
LL | let foo = &16;
| --- help: consider changing this to be a mutable reference: `&mut 16`
...
LL | *foo = 32;
| ^^^^^^^^^ `foo` is a `&` reference, so the data it refers to cannot be written
error[E0594]: cannot assign to `*bar` which is behind a `&` reference
--> $DIR/issue-51515.rs:17:5
--> $DIR/issue-51515.rs:22:5
|
LL | let bar = foo;
| --- help: consider changing this to be a mutable reference: `&mut i32`
...
LL | *bar = 64;
| ^^^^^^^^^ `bar` is a `&` reference, so the data it refers to cannot be written