1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
error[E0308]: mismatched types
--> $DIR/ref-mut-inside-shared-ref-pat.rs:16:17
|
LL | if let Some(&Some(ref mut x)) = &mut Some(Some(0)) {
| ^^^^^^^^^^^^^^^^ ------------------ this expression has type `&mut Option<Option<{integer}>>`
| |
| expected `Option<{integer}>`, found `&_`
|
= note: expected enum `Option<{integer}>`
found reference `&_`
error[E0308]: mismatched types
--> $DIR/ref-mut-inside-shared-ref-pat.rs:22:12
|
LL | if let &Some(Some(ref mut x)) = &mut Some(Some(0)) {
| ^^^^^^^^^^^^^^^^^^^^^^ ------------------ this expression has type `&mut Option<Option<{integer}>>`
| |
| types differ in mutability
|
= note: expected mutable reference `&mut Option<Option<{integer}>>`
found reference `&_`
error[E0308]: mismatched types
--> $DIR/ref-mut-inside-shared-ref-pat.rs:31:9
|
LL | let &pat!(x) = &mut 0;
| ^^^^^^^^ ------ this expression has type `&mut {integer}`
| |
| types differ in mutability
|
= note: expected mutable reference `&mut {integer}`
found reference `&_`
error[E0308]: mismatched types
--> $DIR/ref-mut-inside-shared-ref-pat.rs:36:9
|
LL | let &(ref mut a, ref mut b) = &mut (true, false);
| ^^^^^^^^^^^^^^^^^^^^^^^ ------------------ this expression has type `&mut (bool, bool)`
| |
| types differ in mutability
|
= note: expected mutable reference `&mut (bool, bool)`
found reference `&_`
error[E0308]: mismatched types
--> $DIR/ref-mut-inside-shared-ref-pat.rs:43:9
|
LL | let &[x] = &mut &mut [0];
| ^^^^ ------------- this expression has type `&mut &mut [{integer}; 1]`
| |
| types differ in mutability
|
= note: expected mutable reference `&mut &mut [{integer}; 1]`
found reference `&_`
error: aborting due to 5 previous errors
For more information about this error, try `rustc --explain E0308`.
|