error[E0658]: attributes on expressions are experimental
  --> $DIR/capture-disjoint-field-struct.rs:13:13
   |
LL |     let c = #[rustc_capture_analysis]
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
   = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable

error: First Pass analysis includes:
  --> $DIR/capture-disjoint-field-struct.rs:16:5
   |
LL | /     || {
LL | |
LL | |
LL | |         println!("{}", p.x);
LL | |
LL | |
LL | |     };
   | |_____^
   |
note: Capturing p[(0, 0)] -> ImmBorrow
  --> $DIR/capture-disjoint-field-struct.rs:19:24
   |
LL |         println!("{}", p.x);
   |                        ^^^

error: Min Capture analysis includes:
  --> $DIR/capture-disjoint-field-struct.rs:16:5
   |
LL | /     || {
LL | |
LL | |
LL | |         println!("{}", p.x);
LL | |
LL | |
LL | |     };
   | |_____^
   |
note: Min Capture p[(0, 0)] -> ImmBorrow
  --> $DIR/capture-disjoint-field-struct.rs:19:24
   |
LL |         println!("{}", p.x);
   |                        ^^^

error: aborting due to 3 previous errors

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