]> git.proxmox.com Git - rustc.git/blob - src/test/ui/nll/closure-requirements/propagate-fail-to-approximate-longer-wrong-bounds.stderr
New upstream version 1.41.1+dfsg1
[rustc.git] / src / test / ui / nll / closure-requirements / propagate-fail-to-approximate-longer-wrong-bounds.stderr
1 note: No external requirements
2 --> $DIR/propagate-fail-to-approximate-longer-wrong-bounds.rs:39:47
3 |
4 LL | establish_relationships(&cell_a, &cell_b, |_outlives1, _outlives2, x, y| {
5 | _______________________________________________^
6 LL | | // Only works if 'x: 'y:
7 LL | | demand_y(x, y, x.get())
8 LL | |
9 LL | | });
10 | |_____^
11 |
12 = note: defining type: supply::{{closure}}#0 with closure substs [
13 i16,
14 for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#1r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) &'_#2r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>)),
15 ]
16 = note: late-bound region is '_#3r
17 = note: late-bound region is '_#4r
18
19 error: lifetime may not live long enough
20 --> $DIR/propagate-fail-to-approximate-longer-wrong-bounds.rs:41:9
21 |
22 LL | establish_relationships(&cell_a, &cell_b, |_outlives1, _outlives2, x, y| {
23 | ---------- ---------- has type `&'_#8r std::cell::Cell<&'2 &'_#2r u32>`
24 | |
25 | has type `&'_#6r std::cell::Cell<&'1 &'_#1r u32>`
26 LL | // Only works if 'x: 'y:
27 LL | demand_y(x, y, x.get())
28 | ^^^^^^^^^^^^^^^^^^^^^^^ argument requires that `'1` must outlive `'2`
29
30 note: No external requirements
31 --> $DIR/propagate-fail-to-approximate-longer-wrong-bounds.rs:38:1
32 |
33 LL | / fn supply<'a, 'b>(cell_a: Cell<&'a u32>, cell_b: Cell<&'b u32>) {
34 LL | | establish_relationships(&cell_a, &cell_b, |_outlives1, _outlives2, x, y| {
35 LL | | // Only works if 'x: 'y:
36 LL | | demand_y(x, y, x.get())
37 LL | |
38 LL | | });
39 LL | | }
40 | |_^
41 |
42 = note: defining type: supply
43
44 error: aborting due to previous error
45