1 error[E0382]: borrow of moved value: `a[..]`
2 --> $DIR/borrowck-move-out-from-array-use.rs:10:14
4 LL | let [_, _, _x] = a;
6 LL | let [.., ref _y] = a;
7 | ^^^^^^ value borrowed here after move
9 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
11 error[E0382]: borrow of partially moved value: `a[..]`
12 --> $DIR/borrowck-move-out-from-array-use.rs:16:14
14 LL | let [_, _, (_x, _)] = a;
15 | -- value partially moved here
16 LL | let [.., ref _y] = a;
17 | ^^^^^^ value borrowed here after partial move
19 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
21 error[E0382]: borrow of moved value: `a[..].0`
22 --> $DIR/borrowck-move-out-from-array-use.rs:22:15
24 LL | let [_, _, (_x, _)] = a;
26 LL | let [.., (ref _y, _)] = a;
27 | ^^^^^^ value borrowed here after move
29 = note: move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
31 error[E0382]: borrow of partially moved value: `a`
32 --> $DIR/borrowck-move-out-from-array-use.rs:30:10
34 LL | let [_x, _, _] = a;
35 | -- value partially moved here
36 LL | let [ref _y @ .., _, _] = a;
37 | ^^^^^^^^^^^ value borrowed here after partial move
39 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
41 error[E0382]: borrow of partially moved value: `a`
42 --> $DIR/borrowck-move-out-from-array-use.rs:36:16
44 LL | let [.., _x] = a;
45 | -- value partially moved here
46 LL | let [_, _, ref _y @ ..] = a;
47 | ^^^^^^^^^^^ value borrowed here after partial move
49 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
51 error[E0382]: borrow of partially moved value: `a`
52 --> $DIR/borrowck-move-out-from-array-use.rs:42:10
54 LL | let [(_x, _), _, _] = a;
55 | -- value partially moved here
56 LL | let [ref _y @ .., _, _] = a;
57 | ^^^^^^^^^^^ value borrowed here after partial move
59 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
61 error[E0382]: borrow of partially moved value: `a`
62 --> $DIR/borrowck-move-out-from-array-use.rs:48:16
64 LL | let [.., (_x, _)] = a;
65 | -- value partially moved here
66 LL | let [_, _, ref _y @ ..] = a;
67 | ^^^^^^^^^^^ value borrowed here after partial move
69 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
71 error[E0382]: borrow of moved value: `a[..]`
72 --> $DIR/borrowck-move-out-from-array-use.rs:54:11
74 LL | let [_y @ .., _, _] = a;
75 | ------- value moved here
76 LL | let [(ref _x, _), _, _] = a;
77 | ^^^^^^ value borrowed here after move
79 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
81 error[E0382]: borrow of moved value: `a[..]`
82 --> $DIR/borrowck-move-out-from-array-use.rs:60:15
84 LL | let [_, _, _y @ ..] = a;
85 | ------- value moved here
86 LL | let [.., (ref _x, _)] = a;
87 | ^^^^^^ value borrowed here after move
89 = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
91 error[E0382]: borrow of partially moved value: `a`
92 --> $DIR/borrowck-move-out-from-array-use.rs:68:13
94 LL | let [x @ .., _] = a;
95 | ------ value partially moved here
96 LL | let [_, ref _y @ ..] = a;
97 | ^^^^^^^^^^^ value borrowed here after partial move
99 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
101 error[E0382]: use of partially moved value: `a`
102 --> $DIR/borrowck-move-out-from-array-use.rs:76:5
104 LL | let [_, _, _x] = a;
105 | -- value partially moved here
106 LL | a[2] = Default::default();
107 | ^^^^ value used here after partial move
109 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
111 error[E0382]: use of partially moved value: `a`
112 --> $DIR/borrowck-move-out-from-array-use.rs:82:5
114 LL | let [_, _, (_x, _)] = a;
115 | -- value partially moved here
116 LL | a[2].1 = Default::default();
117 | ^^^^ value used here after partial move
119 = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait
121 error[E0382]: use of partially moved value: `a`
122 --> $DIR/borrowck-move-out-from-array-use.rs:88:5
124 LL | let [_, _, _x @ ..] = a;
125 | ------- value partially moved here
126 LL | a[0] = Default::default();
127 | ^^^^ value used here after partial move
129 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
131 error[E0382]: use of partially moved value: `a`
132 --> $DIR/borrowck-move-out-from-array-use.rs:94:5
134 LL | let [_, _, _x @ ..] = a;
135 | ------- value partially moved here
136 LL | a[0].1 = Default::default();
137 | ^^^^ value used here after partial move
139 = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait
141 error: aborting due to 14 previous errors
143 For more information about this error, try `rustc --explain E0382`.