error[E0505]: cannot move out of `ts` because it is borrowed
  --> $DIR/match-edge-cases_2.rs:32:22
   |
LL |     let _b = || { match ts {
   |              --         -- borrow occurs due to use in closure
   |              |
   |              borrow of `ts.x` occurs here
...
LL |     let mut mut_ts = ts;
   |                      ^^ move out of `ts` occurs here
LL |
LL |     _b();
   |     -- borrow later used here

error: aborting due to 1 previous error

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