1 error[E0658]: attributes on expressions are experimental
2 --> $DIR/destructure_patterns.rs:12:13
4 LL | let c = #[rustc_capture_analysis]
5 | ^^^^^^^^^^^^^^^^^^^^^^^^^
7 = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
8 = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
10 error[E0658]: attributes on expressions are experimental
11 --> $DIR/destructure_patterns.rs:38:13
13 LL | let c = #[rustc_capture_analysis]
14 | ^^^^^^^^^^^^^^^^^^^^^^^^^
16 = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
17 = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
19 error[E0658]: attributes on expressions are experimental
20 --> $DIR/destructure_patterns.rs:58:13
22 LL | let c = #[rustc_capture_analysis]
23 | ^^^^^^^^^^^^^^^^^^^^^^^^^
25 = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
26 = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
28 warning: the feature `capture_disjoint_fields` is incomplete and may not be safe to use and/or cause compiler crashes
29 --> $DIR/destructure_patterns.rs:1:12
31 LL | #![feature(capture_disjoint_fields)]
32 | ^^^^^^^^^^^^^^^^^^^^^^^
34 = note: `#[warn(incomplete_features)]` on by default
35 = note: see issue #53488 <https://github.com/rust-lang/rust/issues/53488> for more information
37 error: First Pass analysis includes:
38 --> $DIR/destructure_patterns.rs:15:5
43 LL | | let [a, b, .., e] = arr;
45 LL | | assert_eq!(e, "E");
49 note: Capturing arr[Index] -> ByValue
50 --> $DIR/destructure_patterns.rs:18:29
52 LL | let [a, b, .., e] = arr;
55 error: Min Capture analysis includes:
56 --> $DIR/destructure_patterns.rs:15:5
61 LL | | let [a, b, .., e] = arr;
63 LL | | assert_eq!(e, "E");
67 note: Min Capture arr[] -> ByValue
68 --> $DIR/destructure_patterns.rs:18:29
70 LL | let [a, b, .., e] = arr;
73 error: First Pass analysis includes:
74 --> $DIR/destructure_patterns.rs:41:5
79 LL | | let Point { x: ref mut x, y: _, id: moved_id } = p;
81 LL | | println!("{}, {}", x, moved_id);
85 note: Capturing p[(0, 0)] -> MutBorrow
86 --> $DIR/destructure_patterns.rs:44:58
88 LL | let Point { x: ref mut x, y: _, id: moved_id } = p;
90 note: Capturing p[(2, 0)] -> ByValue
91 --> $DIR/destructure_patterns.rs:44:58
93 LL | let Point { x: ref mut x, y: _, id: moved_id } = p;
96 error: Min Capture analysis includes:
97 --> $DIR/destructure_patterns.rs:41:5
102 LL | | let Point { x: ref mut x, y: _, id: moved_id } = p;
104 LL | | println!("{}, {}", x, moved_id);
108 note: Min Capture p[(0, 0)] -> MutBorrow
109 --> $DIR/destructure_patterns.rs:44:58
111 LL | let Point { x: ref mut x, y: _, id: moved_id } = p;
113 note: Min Capture p[(2, 0)] -> ByValue
114 --> $DIR/destructure_patterns.rs:44:58
116 LL | let Point { x: ref mut x, y: _, id: moved_id } = p;
119 error: First Pass analysis includes:
120 --> $DIR/destructure_patterns.rs:61:5
125 LL | | let (ref mut x, ref ref_str, (moved_s, _)) = t;
127 LL | | println!("{}, {} {}", x, ref_str, moved_s);
131 note: Capturing t[(0, 0)] -> MutBorrow
132 --> $DIR/destructure_patterns.rs:64:54
134 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
136 note: Capturing t[(1, 0)] -> ImmBorrow
137 --> $DIR/destructure_patterns.rs:64:54
139 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
141 note: Capturing t[(2, 0),(0, 0)] -> ByValue
142 --> $DIR/destructure_patterns.rs:64:54
144 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
147 error: Min Capture analysis includes:
148 --> $DIR/destructure_patterns.rs:61:5
153 LL | | let (ref mut x, ref ref_str, (moved_s, _)) = t;
155 LL | | println!("{}, {} {}", x, ref_str, moved_s);
159 note: Min Capture t[(0, 0)] -> MutBorrow
160 --> $DIR/destructure_patterns.rs:64:54
162 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
164 note: Min Capture t[(1, 0)] -> ImmBorrow
165 --> $DIR/destructure_patterns.rs:64:54
167 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
169 note: Min Capture t[(2, 0),(0, 0)] -> ByValue
170 --> $DIR/destructure_patterns.rs:64:54
172 LL | let (ref mut x, ref ref_str, (moved_s, _)) = t;
175 error: aborting due to 9 previous errors; 1 warning emitted
177 For more information about this error, try `rustc --explain E0658`.