1 error[E0716]: temporary value dropped while borrowed
2 --> $DIR/regions-free-region-ordering-caller1.rs:9:27
4 LL | fn call1<'a>(x: &'a usize) {
5 | -- lifetime `'a` defined here
7 LL | let z: &'a & usize = &(&y);
8 | ----------- ^^^^ creates a temporary which is freed while still in use
10 | type annotation requires that borrow lasts for `'a`
13 | - temporary value is freed at the end of this statement
15 error[E0597]: `y` does not live long enough
16 --> $DIR/regions-free-region-ordering-caller1.rs:9:27
18 LL | fn call1<'a>(x: &'a usize) {
19 | -- lifetime `'a` defined here
21 LL | let z: &'a & usize = &(&y);
22 | ----------- ^^^^ borrowed value does not live long enough
24 | type annotation requires that `y` is borrowed for `'a`
27 | - `y` dropped here while still borrowed
29 error: aborting due to 2 previous errors
31 Some errors have detailed explanations: E0597, E0716.
32 For more information about an error, try `rustc --explain E0597`.