diff options
| author | Ariel Ben-Yehuda <ariel.byd@gmail.com> | 2017-04-06 13:20:24 +0300 |
|---|---|---|
| committer | Ariel Ben-Yehuda <ariel.byd@gmail.com> | 2017-04-06 13:20:24 +0300 |
| commit | 95bd41e339ad07a2d7fb347de0a71fcdf155f2d5 (patch) | |
| tree | 0ca258108cdd8d8716e53526812cc4610e2ff4f8 /src/test | |
| parent | 5309a3e31d88def1f3ea966162ed4f81f161d500 (diff) | |
| download | rust-95bd41e339ad07a2d7fb347de0a71fcdf155f2d5.tar.gz rust-95bd41e339ad07a2d7fb347de0a71fcdf155f2d5.zip | |
don't try to blame tuple fields for immutability
Tuple fields don't have an `&T` in their declaration that can be changed to `&mut T` - skip them.. Fixes #41104.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/did_you_mean/issue-39544.rs | 6 | ||||
| -rw-r--r-- | src/test/ui/did_you_mean/issue-39544.stderr | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/test/ui/did_you_mean/issue-39544.rs b/src/test/ui/did_you_mean/issue-39544.rs index 6331fc5771f..d7c89355606 100644 --- a/src/test/ui/did_you_mean/issue-39544.rs +++ b/src/test/ui/did_you_mean/issue-39544.rs @@ -51,3 +51,9 @@ pub fn with_arg(z: Z, w: &Z) { let _ = &mut z.x; let _ = &mut w.x; } + +pub fn with_tuple() { + let mut y = 0; + let x = (&y,); + *x.0 = 1; +} diff --git a/src/test/ui/did_you_mean/issue-39544.stderr b/src/test/ui/did_you_mean/issue-39544.stderr index e1e229a8b05..2e98bc65e9e 100644 --- a/src/test/ui/did_you_mean/issue-39544.stderr +++ b/src/test/ui/did_you_mean/issue-39544.stderr @@ -90,5 +90,11 @@ error: cannot borrow immutable field `w.x` as mutable 52 | let _ = &mut w.x; | ^^^ cannot mutably borrow immutable field -error: aborting due to 11 previous errors +error: cannot assign to immutable borrowed content `*x.0` + --> $DIR/issue-39544.rs:58:5 + | +58 | *x.0 = 1; + | ^^^^^^^^ cannot borrow as mutable + +error: aborting due to 12 previous errors |
