]> git.lizzy.rs Git - rust.git/blob - src/test/ui/nll/closure-requirements/escape-argument.stderr
37f04af6378d9ae24a0945ad22cc221ef7e4854e
[rust.git] / src / test / ui / nll / closure-requirements / escape-argument.stderr
1 note: No external requirements
2   --> $DIR/escape-argument.rs:26:38
3    |
4 LL |         let mut closure = expect_sig(|p, y| *p = y);
5    |                                      ^^^^^^^^^^^^^
6    |
7    = note: defining type: test::{{closure}}#0 with closure substs [
8                i16,
9                for<'r, 's> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) mut &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32, &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32)),
10            ]
11
12 note: No external requirements
13   --> $DIR/escape-argument.rs:20:1
14    |
15 LL | / fn test() {
16 LL | |     let x = 44;
17 LL | |     let mut p = &x;
18 LL | |
19 ...  |
20 LL | |     deref(p);
21 LL | | }
22    | |_^
23    |
24    = note: defining type: test
25
26 error[E0597]: `y` does not live long enough
27   --> $DIR/escape-argument.rs:27:25
28    |
29 LL |         closure(&mut p, &y);
30    |                         ^^ borrowed value does not live long enough
31 LL |
32 LL |     }
33    |     - `y` dropped here while still borrowed
34 LL | 
35 LL |     deref(p);
36    |           - borrow later used here
37
38 error: aborting due to previous error
39
40 For more information about this error, try `rustc --explain E0597`.