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
|
error: expected identifier, found reserved identifier `_`
--> $DIR/struct_destructure_fail.rs:11:17
|
LL | Struct { a, _ } = Struct { a: 1, b: 2 };
| ------ ^ expected identifier, found reserved identifier
| |
| while parsing this struct
error: functional record updates are not allowed in destructuring assignments
--> $DIR/struct_destructure_fail.rs:13:19
|
LL | Struct { a, ..d } = Struct { a: 1, b: 2 };
| ^ help: consider removing the trailing pattern
error[E0026]: struct `Struct` does not have a field named `c`
--> $DIR/struct_destructure_fail.rs:10:20
|
LL | Struct { a, b, c } = Struct { a: 0, b: 1 };
| ^ struct `Struct` does not have this field
error[E0027]: pattern does not mention field `b`
--> $DIR/struct_destructure_fail.rs:11:5
|
LL | Struct { a, _ } = Struct { a: 1, b: 2 };
| ^^^^^^^^^^^^^^^ missing field `b`
|
help: include the missing field in the pattern
|
LL - Struct { a, _ } = Struct { a: 1, b: 2 };
LL + Struct { a, b } = Struct { a: 1, b: 2 };
|
help: if you don't care about this missing field, you can explicitly ignore it
|
LL - Struct { a, _ } = Struct { a: 1, b: 2 };
LL + Struct { a, b: _ } = Struct { a: 1, b: 2 };
|
help: or always ignore missing fields here
|
LL - Struct { a, _ } = Struct { a: 1, b: 2 };
LL + Struct { a, .. } = Struct { a: 1, b: 2 };
|
error[E0797]: base expression required after `..`
--> $DIR/struct_destructure_fail.rs:15:19
|
LL | Struct { a, .. };
| ^
|
help: add a base expression here
|
LL | Struct { a, ../* expr */ };
| ++++++++++
error: aborting due to 5 previous errors
Some errors have detailed explanations: E0026, E0027, E0797.
For more information about an error, try `rustc --explain E0026`.
|