error[E0597]: `v` does not live long enough --> $DIR/method-ufcs-inherent-2.rs:14:37 | LL | fn foo<'a>() { | -- lifetime `'a` defined here LL | let v = 22; | - binding `v` declared here LL | let x = A::<'a>::new::<&'a u32>(&v, &v); | ------------------------^^----- | | | | | borrowed value does not live long enough | argument requires that `v` is borrowed for `'a` ... LL | } | - `v` dropped here while still borrowed error[E0597]: `v` does not live long enough --> $DIR/method-ufcs-inherent-2.rs:14:41 | LL | fn foo<'a>() { | -- lifetime `'a` defined here LL | let v = 22; | - binding `v` declared here LL | let x = A::<'a>::new::<&'a u32>(&v, &v); | ----------------------------^^- | | | | | borrowed value does not live long enough | argument requires that `v` is borrowed for `'a` ... LL | } | - `v` dropped here while still borrowed error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0597`.