error[E0658]: attributes on expressions are experimental --> $DIR/destructure_patterns.rs:10: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/destructure_patterns.rs:38: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/destructure_patterns.rs:58: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: First Pass analysis includes: --> $DIR/destructure_patterns.rs:13:5 | LL | / || { LL | | LL | | LL | | let [a, b, .., e] = arr; ... | LL | | assert_eq!(e, "E"); LL | | }; | |_____^ | note: Capturing arr[Index] -> ByValue --> $DIR/destructure_patterns.rs:16:29 | LL | let [a, b, .., e] = arr; | ^^^ note: Capturing arr[Index] -> ByValue --> $DIR/destructure_patterns.rs:16:29 | LL | let [a, b, .., e] = arr; | ^^^ note: Capturing arr[Index] -> ByValue --> $DIR/destructure_patterns.rs:16:29 | LL | let [a, b, .., e] = arr; | ^^^ error: Min Capture analysis includes: --> $DIR/destructure_patterns.rs:13:5 | LL | / || { LL | | LL | | LL | | let [a, b, .., e] = arr; ... | LL | | assert_eq!(e, "E"); LL | | }; | |_____^ | note: Min Capture arr[] -> ByValue --> $DIR/destructure_patterns.rs:16:29 | LL | let [a, b, .., e] = arr; | ^^^ error: First Pass analysis includes: --> $DIR/destructure_patterns.rs:41:5 | LL | / || { LL | | LL | | LL | | let Point { x: ref mut x, y: _, id: moved_id } = p; ... | LL | | println!("{}, {}", x, moved_id); LL | | }; | |_____^ | note: Capturing p[(0, 0)] -> MutBorrow --> $DIR/destructure_patterns.rs:44:58 | LL | let Point { x: ref mut x, y: _, id: moved_id } = p; | ^ note: Capturing p[(2, 0)] -> ByValue --> $DIR/destructure_patterns.rs:44:58 | LL | let Point { x: ref mut x, y: _, id: moved_id } = p; | ^ error: Min Capture analysis includes: --> $DIR/destructure_patterns.rs:41:5 | LL | / || { LL | | LL | | LL | | let Point { x: ref mut x, y: _, id: moved_id } = p; ... | LL | | println!("{}, {}", x, moved_id); LL | | }; | |_____^ | note: Min Capture p[(0, 0)] -> MutBorrow --> $DIR/destructure_patterns.rs:44:58 | LL | let Point { x: ref mut x, y: _, id: moved_id } = p; | ^ note: Min Capture p[(2, 0)] -> ByValue --> $DIR/destructure_patterns.rs:44:58 | LL | let Point { x: ref mut x, y: _, id: moved_id } = p; | ^ error: First Pass analysis includes: --> $DIR/destructure_patterns.rs:61:5 | LL | / || { LL | | LL | | LL | | let (ref mut x, ref ref_str, (moved_s, _)) = t; ... | LL | | println!("{}, {} {}", x, ref_str, moved_s); LL | | }; | |_____^ | note: Capturing t[(0, 0)] -> MutBorrow --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ note: Capturing t[(1, 0)] -> ImmBorrow --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ note: Capturing t[(2, 0),(0, 0)] -> ByValue --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ error: Min Capture analysis includes: --> $DIR/destructure_patterns.rs:61:5 | LL | / || { LL | | LL | | LL | | let (ref mut x, ref ref_str, (moved_s, _)) = t; ... | LL | | println!("{}, {} {}", x, ref_str, moved_s); LL | | }; | |_____^ | note: Min Capture t[(0, 0)] -> MutBorrow --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ note: Min Capture t[(1, 0)] -> ImmBorrow --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ note: Min Capture t[(2, 0),(0, 0)] -> ByValue --> $DIR/destructure_patterns.rs:64:54 | LL | let (ref mut x, ref ref_str, (moved_s, _)) = t; | ^ error: aborting due to 9 previous errors For more information about this error, try `rustc --explain E0658`.