1 error[E0507]: cannot move out of `x.0`, as `x` is a captured variable in an `Fn` closure
2 --> $DIR/move-into-closure.rs:28:21
5 | - captured outer variable
8 | -- ^ help: consider borrowing here: `&x`
11 | move occurs because `_t` has type `Y`, which does not implement the `Copy` trait
13 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `Fn` closure
14 --> $DIR/move-into-closure.rs:32:34
16 LL | let e = Either::One(X(Y));
17 | - captured outer variable
19 LL | if let Either::One(_t) = e { }
20 | -- ^ help: consider borrowing here: `&e`
23 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
25 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `Fn` closure
26 --> $DIR/move-into-closure.rs:36:37
28 LL | let e = Either::One(X(Y));
29 | - captured outer variable
31 LL | while let Either::One(_t) = e { }
32 | -- ^ help: consider borrowing here: `&e`
35 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
37 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `Fn` closure
38 --> $DIR/move-into-closure.rs:40:15
40 LL | let e = Either::One(X(Y));
41 | - captured outer variable
44 | ^ help: consider borrowing here: `&e`
50 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
52 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `Fn` closure
53 --> $DIR/move-into-closure.rs:47:15
55 LL | let e = Either::One(X(Y));
56 | - captured outer variable
59 | ^ help: consider borrowing here: `&e`
61 LL | Either::One(_t) => (),
65 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
67 error[E0507]: cannot move out of `x.0`, as `x` is a captured variable in an `Fn` closure
68 --> $DIR/move-into-closure.rs:56:25
71 | - captured outer variable
73 LL | let X(mut _t) = x;
74 | ------ ^ help: consider borrowing here: `&x`
77 | move occurs because `_t` has type `Y`, which does not implement the `Copy` trait
79 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `Fn` closure
80 --> $DIR/move-into-closure.rs:60:38
82 LL | let mut em = Either::One(X(Y));
83 | ------ captured outer variable
85 LL | if let Either::One(mut _t) = em { }
86 | ------ ^^ help: consider borrowing here: `&em`
89 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
91 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `Fn` closure
92 --> $DIR/move-into-closure.rs:64:41
94 LL | let mut em = Either::One(X(Y));
95 | ------ captured outer variable
97 LL | while let Either::One(mut _t) = em { }
98 | ------ ^^ help: consider borrowing here: `&em`
101 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
103 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `Fn` closure
104 --> $DIR/move-into-closure.rs:68:15
106 LL | let mut em = Either::One(X(Y));
107 | ------ captured outer variable
110 | ^^ help: consider borrowing here: `&em`
112 LL | Either::One(mut _t)
116 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
118 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `Fn` closure
119 --> $DIR/move-into-closure.rs:75:15
121 LL | let mut em = Either::One(X(Y));
122 | ------ captured outer variable
125 | ^^ help: consider borrowing here: `&em`
127 LL | Either::One(mut _t) => (),
131 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
133 error[E0507]: cannot move out of `x.0`, as `x` is a captured variable in an `FnMut` closure
134 --> $DIR/move-into-closure.rs:95:21
137 | - captured outer variable
140 | -- ^ help: consider borrowing here: `&x`
143 | move occurs because `_t` has type `Y`, which does not implement the `Copy` trait
145 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `FnMut` closure
146 --> $DIR/move-into-closure.rs:99:34
148 LL | let e = Either::One(X(Y));
149 | - captured outer variable
151 LL | if let Either::One(_t) = e { }
152 | -- ^ help: consider borrowing here: `&e`
155 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
157 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `FnMut` closure
158 --> $DIR/move-into-closure.rs:103:37
160 LL | let e = Either::One(X(Y));
161 | - captured outer variable
163 LL | while let Either::One(_t) = e { }
164 | -- ^ help: consider borrowing here: `&e`
167 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
169 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `FnMut` closure
170 --> $DIR/move-into-closure.rs:107:15
172 LL | let e = Either::One(X(Y));
173 | - captured outer variable
176 | ^ help: consider borrowing here: `&e`
182 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
184 error[E0507]: cannot move out of `e.0`, as `e` is a captured variable in an `FnMut` closure
185 --> $DIR/move-into-closure.rs:114:15
187 LL | let e = Either::One(X(Y));
188 | - captured outer variable
191 | ^ help: consider borrowing here: `&e`
193 LL | Either::One(_t) => (),
197 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
199 error[E0507]: cannot move out of `x.0`, as `x` is a captured variable in an `FnMut` closure
200 --> $DIR/move-into-closure.rs:123:25
203 | - captured outer variable
205 LL | let X(mut _t) = x;
206 | ------ ^ help: consider borrowing here: `&x`
209 | move occurs because `_t` has type `Y`, which does not implement the `Copy` trait
211 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `FnMut` closure
212 --> $DIR/move-into-closure.rs:127:38
214 LL | let mut em = Either::One(X(Y));
215 | ------ captured outer variable
217 LL | if let Either::One(mut _t) = em { }
218 | ------ ^^ help: consider borrowing here: `&em`
221 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
223 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `FnMut` closure
224 --> $DIR/move-into-closure.rs:131:41
226 LL | let mut em = Either::One(X(Y));
227 | ------ captured outer variable
229 LL | while let Either::One(mut _t) = em { }
230 | ------ ^^ help: consider borrowing here: `&em`
233 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
235 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `FnMut` closure
236 --> $DIR/move-into-closure.rs:135:15
238 LL | let mut em = Either::One(X(Y));
239 | ------ captured outer variable
242 | ^^ help: consider borrowing here: `&em`
244 LL | Either::One(mut _t)
248 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
250 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `FnMut` closure
251 --> $DIR/move-into-closure.rs:142:15
253 LL | let mut em = Either::One(X(Y));
254 | ------ captured outer variable
257 | ^^ help: consider borrowing here: `&em`
259 LL | Either::One(mut _t) => (),
263 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
265 error[E0507]: cannot move out of `em.0`, as `em` is a captured variable in an `FnMut` closure
266 --> $DIR/move-into-closure.rs:150:15
268 LL | let mut em = Either::One(X(Y));
269 | ------ captured outer variable
272 | ^^ help: consider borrowing here: `&em`
274 LL | Either::One(mut _t) => (),
278 | move occurs because `_t` has type `X`, which does not implement the `Copy` trait
280 error: aborting due to 21 previous errors
282 For more information about this error, try `rustc --explain E0507`.