]> git.lizzy.rs Git - rust.git/blob - src/test/ui/destructuring-assignment/tuple_struct_destructure_fail.stderr
Add underscore expressions for destructuring assignments
[rust.git] / src / test / ui / destructuring-assignment / tuple_struct_destructure_fail.stderr
1 error: `..` can only be used once per tuple struct or variant pattern
2   --> $DIR/tuple_struct_destructure_fail.rs:25:27
3    |
4 LL |     TupleStruct(a, .., b, ..) = TupleStruct(0, 1);
5    |                    --     ^^ can only be used once per tuple struct or variant pattern
6    |                    |
7    |                    previously used here
8
9 error: `..` can only be used once per tuple struct or variant pattern
10   --> $DIR/tuple_struct_destructure_fail.rs:27:35
11    |
12 LL |     Enum::SingleVariant(a, .., b, ..) = Enum::SingleVariant(0, 1);
13    |                            --     ^^ can only be used once per tuple struct or variant pattern
14    |                            |
15    |                            previously used here
16
17 error[E0023]: this pattern has 3 fields, but the corresponding tuple struct has 2 fields
18   --> $DIR/tuple_struct_destructure_fail.rs:30:5
19    |
20 LL | struct TupleStruct<S, T>(S, T);
21    | ------------------------------- tuple struct defined here
22 ...
23 LL |     TupleStruct(a, a, b) = TupleStruct(1, 2);
24    |     ^^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 3
25
26 error[E0023]: this pattern has 1 field, but the corresponding tuple struct has 2 fields
27   --> $DIR/tuple_struct_destructure_fail.rs:32:5
28    |
29 LL | struct TupleStruct<S, T>(S, T);
30    | ------------------------------- tuple struct defined here
31 ...
32 LL |     TupleStruct(_) = TupleStruct(1, 2);
33    |     ^^^^^^^^^^^^^^ expected 2 fields, found 1
34
35 error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
36   --> $DIR/tuple_struct_destructure_fail.rs:34:5
37    |
38 LL |     SingleVariant(S, T)
39    |     ------------------- tuple variant defined here
40 ...
41 LL |     Enum::SingleVariant(a, a, b) = Enum::SingleVariant(1, 2);
42    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 3
43
44 error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 2 fields
45   --> $DIR/tuple_struct_destructure_fail.rs:36:5
46    |
47 LL |     SingleVariant(S, T)
48    |     ------------------- tuple variant defined here
49 ...
50 LL |     Enum::SingleVariant(_) = Enum::SingleVariant(1, 2);
51    |     ^^^^^^^^^^^^^^^^^^^^^^ expected 2 fields, found 1
52
53 error[E0070]: invalid left-hand side of assignment
54   --> $DIR/tuple_struct_destructure_fail.rs:40:12
55    |
56 LL |     test() = TupleStruct(0, 0);
57    |     ------ ^
58    |     |
59    |     cannot assign to this expression
60
61 error[E0070]: invalid left-hand side of assignment
62   --> $DIR/tuple_struct_destructure_fail.rs:42:14
63    |
64 LL |     (test)() = TupleStruct(0, 0);
65    |     -------- ^
66    |     |
67    |     cannot assign to this expression
68
69 error[E0070]: invalid left-hand side of assignment
70   --> $DIR/tuple_struct_destructure_fail.rs:44:38
71    |
72 LL |     <Alias::<isize> as Test>::test() = TupleStruct(0, 0);
73    |     -------------------------------- ^
74    |     |
75    |     cannot assign to this expression
76
77 error: aborting due to 9 previous errors
78
79 Some errors have detailed explanations: E0023, E0070.
80 For more information about an error, try `rustc --explain E0023`.