diff options
Diffstat (limited to 'tests/ui/closures/2229_closure_analysis/diagnostics/borrowck/borrowck-3.rs')
-rw-r--r-- | tests/ui/closures/2229_closure_analysis/diagnostics/borrowck/borrowck-3.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ui/closures/2229_closure_analysis/diagnostics/borrowck/borrowck-3.rs b/tests/ui/closures/2229_closure_analysis/diagnostics/borrowck/borrowck-3.rs new file mode 100644 index 000000000..00f50c33e --- /dev/null +++ b/tests/ui/closures/2229_closure_analysis/diagnostics/borrowck/borrowck-3.rs @@ -0,0 +1,17 @@ +// edition:2021 + +#[derive(Debug)] +struct Point { + x: String, + y: String, +} +fn main() { + let mut c = { + let mut p = Point {x: "1".to_string(), y: "2".to_string() }; + || { //~ ERROR closure may outlive the current block, but it borrows `p` + let x = &mut p.x; + println!("{:?}", p); + } + }; + c(); +} |