error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:12:17 | LL | let mut c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:30:17 | LL | let mut c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:51:17 | LL | let mut c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:74:17 | LL | let mut c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:96:17 | LL | let mut c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:117:13 | LL | let c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:133:13 | LL | let c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:150:13 | LL | let c = #[rustc_capture_analysis] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:172:13 | LL | let c = #[rustc_capture_analysis] move || box_p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:189:13 | LL | let c = #[rustc_capture_analysis] move || p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error[E0658]: attributes on expressions are experimental --> $DIR/move_closure.rs:202:13 | LL | let c = #[rustc_capture_analysis] move || x; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable error: First Pass analysis includes: --> $DIR/move_closure.rs:202:39 | LL | let c = #[rustc_capture_analysis] move || x; | ^^^^^^^^^ | note: Capturing x[] -> ImmBorrow --> $DIR/move_closure.rs:202:47 | LL | let c = #[rustc_capture_analysis] move || x; | ^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:202:39 | LL | let c = #[rustc_capture_analysis] move || x; | ^^^^^^^^^ | note: Min Capture x[] -> ByValue --> $DIR/move_closure.rs:202:47 | LL | let c = #[rustc_capture_analysis] move || x; | ^ error: First Pass analysis includes: --> $DIR/move_closure.rs:15:5 | LL | / move || { LL | | LL | | LL | | t.0.0 = "new S".into(); LL | | LL | | LL | | }; | |_____^ | note: Capturing t[(0, 0),(0, 0)] -> MutBorrow --> $DIR/move_closure.rs:18:9 | LL | t.0.0 = "new S".into(); | ^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:15:5 | LL | / move || { LL | | LL | | LL | | t.0.0 = "new S".into(); LL | | LL | | LL | | }; | |_____^ | note: Min Capture t[(0, 0),(0, 0)] -> ByValue --> $DIR/move_closure.rs:18:9 | LL | t.0.0 = "new S".into(); | ^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:33:5 | LL | / move || { LL | | LL | | LL | | *ref_s += 10; LL | | LL | | LL | | }; | |_____^ | note: Capturing ref_s[Deref] -> MutBorrow --> $DIR/move_closure.rs:36:9 | LL | *ref_s += 10; | ^^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:33:5 | LL | / move || { LL | | LL | | LL | | *ref_s += 10; LL | | LL | | LL | | }; | |_____^ | note: Min Capture ref_s[] -> ByValue --> $DIR/move_closure.rs:36:9 | LL | *ref_s += 10; | ^^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:54:5 | LL | / move || { LL | | LL | | LL | | t.0.0 = "new s".into(); LL | | LL | | LL | | }; | |_____^ | note: Capturing t[(0, 0),Deref,(0, 0)] -> MutBorrow --> $DIR/move_closure.rs:57:9 | LL | t.0.0 = "new s".into(); | ^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:54:5 | LL | / move || { LL | | LL | | LL | | t.0.0 = "new s".into(); LL | | LL | | LL | | }; | |_____^ | note: Min Capture t[(0, 0)] -> ByValue --> $DIR/move_closure.rs:57:9 | LL | t.0.0 = "new s".into(); | ^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:77:5 | LL | / move || { LL | | LL | | LL | | let _t = t.0.0; LL | | LL | | LL | | }; | |_____^ | note: Capturing t[(0, 0),Deref,(0, 0)] -> ImmBorrow --> $DIR/move_closure.rs:80:18 | LL | let _t = t.0.0; | ^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:77:5 | LL | / move || { LL | | LL | | LL | | let _t = t.0.0; LL | | LL | | LL | | }; | |_____^ | note: Min Capture t[(0, 0)] -> ByValue --> $DIR/move_closure.rs:80:18 | LL | let _t = t.0.0; | ^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:99:5 | LL | / move || { LL | | LL | | LL | | let _t = t.0.0; LL | | LL | | LL | | }; | |_____^ | note: Capturing t[(0, 0),Deref,(0, 0)] -> ByValue --> $DIR/move_closure.rs:102:18 | LL | let _t = t.0.0; | ^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:99:5 | LL | / move || { LL | | LL | | LL | | let _t = t.0.0; LL | | LL | | LL | | }; | |_____^ | note: Min Capture t[(0, 0)] -> ByValue --> $DIR/move_closure.rs:102:18 | LL | let _t = t.0.0; | ^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:120:5 | LL | / move || { LL | | LL | | LL | | let _t = b.0; LL | | LL | | LL | | }; | |_____^ | note: Capturing b[Deref,(0, 0)] -> ImmBorrow --> $DIR/move_closure.rs:123:18 | LL | let _t = b.0; | ^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:120:5 | LL | / move || { LL | | LL | | LL | | let _t = b.0; LL | | LL | | LL | | }; | |_____^ | note: Min Capture b[] -> ByValue --> $DIR/move_closure.rs:123:18 | LL | let _t = b.0; | ^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:136:5 | LL | / move || { LL | | LL | | LL | | println!("{}", b.0); LL | | LL | | LL | | }; | |_____^ | note: Capturing b[Deref,(0, 0)] -> ImmBorrow --> $DIR/move_closure.rs:139:24 | LL | println!("{}", b.0); | ^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:136:5 | LL | / move || { LL | | LL | | LL | | println!("{}", b.0); LL | | LL | | LL | | }; | |_____^ | note: Min Capture b[] -> ByValue --> $DIR/move_closure.rs:139:24 | LL | println!("{}", b.0); | ^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:153:5 | LL | / move || { LL | | LL | | LL | | println!("{}", t.1.0); LL | | LL | | LL | | }; | |_____^ | note: Capturing t[(1, 0),Deref,(0, 0)] -> ImmBorrow --> $DIR/move_closure.rs:156:24 | LL | println!("{}", t.1.0); | ^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:153:5 | LL | / move || { LL | | LL | | LL | | println!("{}", t.1.0); LL | | LL | | LL | | }; | |_____^ | note: Min Capture t[(1, 0)] -> ByValue --> $DIR/move_closure.rs:156:24 | LL | println!("{}", t.1.0); | ^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:172:39 | LL | let c = #[rustc_capture_analysis] move || box_p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | note: Capturing box_p_foo[Deref,Deref,(0, 0)] -> MutBorrow --> $DIR/move_closure.rs:172:47 | LL | let c = #[rustc_capture_analysis] move || box_p_foo.x += 10; | ^^^^^^^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:172:39 | LL | let c = #[rustc_capture_analysis] move || box_p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^^^^^ | note: Min Capture box_p_foo[] -> ByValue --> $DIR/move_closure.rs:172:47 | LL | let c = #[rustc_capture_analysis] move || box_p_foo.x += 10; | ^^^^^^^^^^^ error: First Pass analysis includes: --> $DIR/move_closure.rs:189:39 | LL | let c = #[rustc_capture_analysis] move || p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^ | note: Capturing p_foo[Deref,Deref,(0, 0)] -> MutBorrow --> $DIR/move_closure.rs:189:47 | LL | let c = #[rustc_capture_analysis] move || p_foo.x += 10; | ^^^^^^^ error: Min Capture analysis includes: --> $DIR/move_closure.rs:189:39 | LL | let c = #[rustc_capture_analysis] move || p_foo.x += 10; | ^^^^^^^^^^^^^^^^^^^^^ | note: Min Capture p_foo[] -> ByValue --> $DIR/move_closure.rs:189:47 | LL | let c = #[rustc_capture_analysis] move || p_foo.x += 10; | ^^^^^^^ error: aborting due to 33 previous errors For more information about this error, try `rustc --explain E0658`.