1 error[E0509]: cannot move out of type `S`, which implements the `Drop` trait
2 --> $DIR/borrowck-move-out-of-struct-with-dtor.rs:20:11
4 LL | match (S {f:"foo".to_string()}) {
5 | ^^^^^^^^^^^^^^^^^^^^^^^^^ cannot move out of here
6 LL | //[mir]~^ ERROR [E0509]
11 | help: to prevent move, use ref or ref mut: `ref _s`
13 error[E0509]: cannot move out of type `S`, which implements the `Drop` trait
14 --> $DIR/borrowck-move-out-of-struct-with-dtor.rs:28:20
16 LL | let S {f:_s} = S {f:"foo".to_string()};
17 | -- ^^^^^^^^^^^^^^^^^^^^^^^ cannot move out of here
20 | help: to prevent move, use ref or ref mut: `ref _s`
22 error[E0509]: cannot move out of type `S`, which implements the `Drop` trait
23 --> $DIR/borrowck-move-out-of-struct-with-dtor.rs:33:19
25 LL | fn move_in_fn_arg(S {f:_s}: S) {
29 | | help: to prevent move, use ref or ref mut: `ref _s`
30 | cannot move out of here
32 error: aborting due to 3 previous errors
34 For more information about this error, try `rustc --explain E0509`.