1 note: external requirements
2 --> $DIR/escape-upvar-nested.rs:21:32
4 LL | let mut closure1 = || p = &y;
7 = note: defining type: test::{closure#0}::{closure#0} with closure args [
9 extern "rust-call" fn(()),
10 (&'?1 mut &'?2 i32, &'?3 i32),
12 = note: number of external vids: 4
13 = note: where '?3: '?2
15 note: external requirements
16 --> $DIR/escape-upvar-nested.rs:20:27
18 LL | let mut closure = || {
21 = note: defining type: test::{closure#0} with closure args [
23 extern "rust-call" fn(()),
24 (&'?1 mut &'?2 i32, &'?3 i32),
26 = note: number of external vids: 4
27 = note: where '?3: '?2
29 note: no external requirements
30 --> $DIR/escape-upvar-nested.rs:13:1
35 = note: defining type: test
37 error[E0597]: `y` does not live long enough
38 --> $DIR/escape-upvar-nested.rs:21:40
40 LL | let mut closure = || {
41 | -- value captured here
42 LL | let mut closure1 = || p = &y;
43 | ^ borrowed value does not live long enough
46 | - `y` dropped here while still borrowed
49 | - borrow later used here
51 error: aborting due to 1 previous error
53 For more information about this error, try `rustc --explain E0597`.