error[E0597]: `a` does not live long enough --> $DIR/method-ufcs-1.rs:42:7 | LL | x(&a, b, c); //~ ERROR | ^^ borrowed value does not live long enough LL | } | - `a` dropped here while still borrowed | = note: borrowed value must be valid for the static lifetime... error[E0597]: `a` does not live long enough --> $DIR/method-ufcs-1.rs:49:36 | LL | <&'a u32 as Bazoom<_>>::method(&a, b, c); //~ ERROR | ^^ borrowed value does not live long enough LL | } | - `a` dropped here while still borrowed | note: borrowed value must be valid for the lifetime 'a as defined on the function body at 45:35... --> $DIR/method-ufcs-1.rs:45:35 | LL | fn annot_reference_named_lifetime<'a>(_d: &'a u32) { | ^^ error[E0597]: `a` does not live long enough --> $DIR/method-ufcs-1.rs:63:41 | LL | let _closure = || { | -- value captured here LL | let c = 66; LL | <&'a u32 as Bazoom<_>>::method(&a, b, c); //~ ERROR | ^ borrowed value does not live long enough LL | }; LL | } | - `a` dropped here while still borrowed | note: borrowed value must be valid for the lifetime 'a as defined on the function body at 58:46... --> $DIR/method-ufcs-1.rs:58:46 | LL | fn annot_reference_named_lifetime_in_closure<'a>(_: &'a u32) { | ^^ error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0597`.