rust/tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs
许杰友 Jieyou Xu (Joe) edafbaffb2
Adjust UI tests for unit_bindings
- Either explicitly annotate `let x: () = expr;` where `x` has unit
  type, or remove the unit binding to leave only `expr;` instead.
- Fix disjoint-capture-in-same-closure test
2023-06-12 20:24:48 +08:00

24 lines
390 B
Rust

// edition:2021
// run-pass
// Tests that if a closure uses individual fields of the same object
// then that case is handled properly.
#![allow(unused)]
struct Struct {
x: i32,
y: i32,
s: String,
}
fn main() {
let mut s = Struct { x: 10, y: 10, s: String::new() };
let mut c = || {
s.x += 10;
s.y += 42;
s.s = String::from("new");
};
}