error[E0382]: borrow of moved value: `a[..]`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:15:14
   |
LL |         [_, _, _x] => {}
   |                -- value moved here
...
LL |         [.., ref _y] => {}
   |              ^^^^^^ value borrowed here after move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: borrow of moved value: `a[..]`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:25:14
   |
LL |         [_, _, (_x, _)] => {}
   |                 -- value moved here
...
LL |         [.., ref _y] => {}
   |              ^^^^^^ value borrowed here after partial move
   |
   = note: move occurs because `a[..].0` has type `std::string::String`, which does not implement the `Copy` trait

error[E0382]: borrow of moved value: `a[..].0`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:35:15
   |
LL |         [_, _, (_x, _)] => {}
   |                 -- value moved here
...
LL |         [.., (ref _y, _)] => {}
   |               ^^^^^^ value borrowed here after move
   |
   = note: move occurs because `a[..].0` has type `std::string::String`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:46:11
   |
LL |         [_x, _, _] => {}
   |          -- value moved here
LL |     }
LL |     match a {
   |           ^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:57:11
   |
LL |         [.., _x] => {}
   |              -- value moved here
LL |     }
LL |     match a {
   |           ^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:68:11
   |
LL |         [(_x, _), _, _] => {}
   |           -- value moved here
LL |     }
LL |     match a {
   |           ^ value used here after partial move
   |
   = note: move occurs because `a[..].0` has type `std::string::String`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:79:11
   |
LL |         [.., (_x, _)] => {}
   |               -- value moved here
LL |     }
LL |     match a {
   |           ^ value used here after partial move
   |
   = note: move occurs because `a[..].0` has type `std::string::String`, which does not implement the `Copy` trait

error[E0382]: borrow of moved value: `a[..]`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:91:11
   |
LL |         [_y @ .., _, _] => {}
   |          ------- value moved here
...
LL |         [(ref _x, _), _, _] => {}
   |           ^^^^^^ value borrowed here after move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: borrow of moved value: `a[..]`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:101:15
   |
LL |         [_, _, _y @ ..] => {}
   |                ------- value moved here
...
LL |         [.., (ref _x, _)] => {}
   |               ^^^^^^ value borrowed here after move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:112:11
   |
LL |         [x @ .., _] => {}
   |          ------ value moved here
LL |     }
LL |     match a {
   |           ^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:125:5
   |
LL |         [_, _, _x] => {}
   |                -- value moved here
LL |     }
LL |     a[2] = Default::default();
   |     ^^^^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:133:5
   |
LL |         [_, _, (_x, _)] => {}
   |                 -- value moved here
LL |     }
LL |     a[2].1 = Default::default();
   |     ^^^^ value used here after partial move
   |
   = note: move occurs because `a[..].0` has type `std::string::String`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:141:5
   |
LL |         [_, _, _x @ ..] => {}
   |                ------- value moved here
LL |     }
LL |     a[0] = Default::default();
   |     ^^^^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error[E0382]: use of moved value: `a`
  --> $DIR/borrowck-move-out-from-array-use-match.rs:149:5
   |
LL |         [_, _, _x @ ..] => {}
   |                ------- value moved here
LL |     }
LL |     a[0].1 = Default::default();
   |     ^^^^ value used here after partial move
   |
   = note: move occurs because `a[..]` has type `(std::string::String, std::string::String)`, which does not implement the `Copy` trait

error: aborting due to 14 previous errors

For more information about this error, try `rustc --explain E0382`.
