]> git.proxmox.com Git - rustc.git/blob - src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr
New upstream version 1.67.1+dfsg1
[rustc.git] / src / test / ui / borrowck / borrowck-move-out-from-array-use.stderr
1 error[E0382]: borrow of moved value: `a[..]`
2 --> $DIR/borrowck-move-out-from-array-use.rs:10:14
3 |
4 LL | let [_, _, _x] = a;
5 | -- value moved here
6 LL | let [.., ref _y] = a;
7 | ^^^^^^ value borrowed here after move
8 |
9 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
10 help: borrow this binding in the pattern to avoid moving the value
11 |
12 LL | let [_, _, ref _x] = a;
13 | +++
14
15 error[E0382]: borrow of partially moved value: `a[..]`
16 --> $DIR/borrowck-move-out-from-array-use.rs:16:14
17 |
18 LL | let [_, _, (_x, _)] = a;
19 | -- value partially moved here
20 LL | let [.., ref _y] = a;
21 | ^^^^^^ value borrowed here after partial move
22 |
23 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
24 help: borrow this binding in the pattern to avoid moving the value
25 |
26 LL | let [_, _, (ref _x, _)] = a;
27 | +++
28
29 error[E0382]: borrow of moved value: `a[..].0`
30 --> $DIR/borrowck-move-out-from-array-use.rs:22:15
31 |
32 LL | let [_, _, (_x, _)] = a;
33 | -- value moved here
34 LL | let [.., (ref _y, _)] = a;
35 | ^^^^^^ value borrowed here after move
36 |
37 = note: move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
38 help: borrow this binding in the pattern to avoid moving the value
39 |
40 LL | let [_, _, (ref _x, _)] = a;
41 | +++
42
43 error[E0382]: borrow of partially moved value: `a`
44 --> $DIR/borrowck-move-out-from-array-use.rs:30:10
45 |
46 LL | let [_x, _, _] = a;
47 | -- value partially moved here
48 LL | let [ref _y @ .., _, _] = a;
49 | ^^^^^^ value borrowed here after partial move
50 |
51 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
52 help: borrow this binding in the pattern to avoid moving the value
53 |
54 LL | let [ref _x, _, _] = a;
55 | +++
56
57 error[E0382]: borrow of partially moved value: `a`
58 --> $DIR/borrowck-move-out-from-array-use.rs:36:16
59 |
60 LL | let [.., _x] = a;
61 | -- value partially moved here
62 LL | let [_, _, ref _y @ ..] = a;
63 | ^^^^^^ value borrowed here after partial move
64 |
65 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
66 help: borrow this binding in the pattern to avoid moving the value
67 |
68 LL | let [.., ref _x] = a;
69 | +++
70
71 error[E0382]: borrow of partially moved value: `a`
72 --> $DIR/borrowck-move-out-from-array-use.rs:42:10
73 |
74 LL | let [(_x, _), _, _] = a;
75 | -- value partially moved here
76 LL | let [ref _y @ .., _, _] = a;
77 | ^^^^^^ value borrowed here after partial move
78 |
79 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
80 help: borrow this binding in the pattern to avoid moving the value
81 |
82 LL | let [(ref _x, _), _, _] = a;
83 | +++
84
85 error[E0382]: borrow of partially moved value: `a`
86 --> $DIR/borrowck-move-out-from-array-use.rs:48:16
87 |
88 LL | let [.., (_x, _)] = a;
89 | -- value partially moved here
90 LL | let [_, _, ref _y @ ..] = a;
91 | ^^^^^^ value borrowed here after partial move
92 |
93 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
94 help: borrow this binding in the pattern to avoid moving the value
95 |
96 LL | let [.., (ref _x, _)] = a;
97 | +++
98
99 error[E0382]: borrow of moved value: `a[..]`
100 --> $DIR/borrowck-move-out-from-array-use.rs:54:11
101 |
102 LL | let [_y @ .., _, _] = a;
103 | -- value moved here
104 LL | let [(ref _x, _), _, _] = a;
105 | ^^^^^^ value borrowed here after move
106 |
107 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
108 help: borrow this binding in the pattern to avoid moving the value
109 |
110 LL | let [ref _y @ .., _, _] = a;
111 | +++
112
113 error[E0382]: borrow of moved value: `a[..]`
114 --> $DIR/borrowck-move-out-from-array-use.rs:60:15
115 |
116 LL | let [_, _, _y @ ..] = a;
117 | -- value moved here
118 LL | let [.., (ref _x, _)] = a;
119 | ^^^^^^ value borrowed here after move
120 |
121 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
122 help: borrow this binding in the pattern to avoid moving the value
123 |
124 LL | let [_, _, ref _y @ ..] = a;
125 | +++
126
127 error[E0382]: borrow of partially moved value: `a`
128 --> $DIR/borrowck-move-out-from-array-use.rs:68:13
129 |
130 LL | let [x @ .., _] = a;
131 | - value partially moved here
132 LL | let [_, ref _y @ ..] = a;
133 | ^^^^^^ value borrowed here after partial move
134 |
135 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
136 help: borrow this binding in the pattern to avoid moving the value
137 |
138 LL | let [ref x @ .., _] = a;
139 | +++
140
141 error[E0382]: use of partially moved value: `a`
142 --> $DIR/borrowck-move-out-from-array-use.rs:76:5
143 |
144 LL | let [_, _, _x] = a;
145 | -- value partially moved here
146 LL | a[2] = Default::default();
147 | ^^^^ value used here after partial move
148 |
149 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
150 help: borrow this binding in the pattern to avoid moving the value
151 |
152 LL | let [_, _, ref _x] = a;
153 | +++
154
155 error[E0382]: use of partially moved value: `a`
156 --> $DIR/borrowck-move-out-from-array-use.rs:82:5
157 |
158 LL | let [_, _, (_x, _)] = a;
159 | -- value partially moved here
160 LL | a[2].1 = Default::default();
161 | ^^^^ value used here after partial move
162 |
163 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
164 help: borrow this binding in the pattern to avoid moving the value
165 |
166 LL | let [_, _, (ref _x, _)] = a;
167 | +++
168
169 error[E0382]: use of partially moved value: `a`
170 --> $DIR/borrowck-move-out-from-array-use.rs:88:5
171 |
172 LL | let [_, _, _x @ ..] = a;
173 | -- value partially moved here
174 LL | a[0] = Default::default();
175 | ^^^^ value used here after partial move
176 |
177 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
178 help: borrow this binding in the pattern to avoid moving the value
179 |
180 LL | let [_, _, ref _x @ ..] = a;
181 | +++
182
183 error[E0382]: use of partially moved value: `a`
184 --> $DIR/borrowck-move-out-from-array-use.rs:94:5
185 |
186 LL | let [_, _, _x @ ..] = a;
187 | -- value partially moved here
188 LL | a[0].1 = Default::default();
189 | ^^^^ value used here after partial move
190 |
191 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
192 help: borrow this binding in the pattern to avoid moving the value
193 |
194 LL | let [_, _, ref _x @ ..] = a;
195 | +++
196
197 error: aborting due to 14 previous errors
198
199 For more information about this error, try `rustc --explain E0382`.