| warning: lifetime parameter `'b` never used |
| --> $DIR/regions-static-bound.rs:3:17 |
| | |
| LL | fn static_id<'a,'b>(t: &'a ()) -> &'static () where 'a: 'static { t } |
| | -^^ |
| | | |
| | help: elide the unused lifetime |
| | |
| note: the lint level is defined here |
| --> $DIR/regions-static-bound.rs:1:9 |
| | |
| LL | #![warn(unused_lifetimes)] |
| | ^^^^^^^^^^^^^^^^ |
| |
| warning: unnecessary lifetime parameter `'a` |
| --> $DIR/regions-static-bound.rs:3:53 |
| | |
| LL | fn static_id<'a,'b>(t: &'a ()) -> &'static () where 'a: 'static { t } |
| | ^^ |
| | |
| = help: you can use the `'static` lifetime directly, in place of `'a` |
| |
| warning: unnecessary lifetime parameter `'b` |
| --> $DIR/regions-static-bound.rs:8:19 |
| | |
| LL | where 'a: 'b, 'b: 'static { t } |
| | ^^ |
| | |
| = help: you can use the `'static` lifetime directly, in place of `'b` |
| |
| error: lifetime may not live long enough |
| --> $DIR/regions-static-bound.rs:12:5 |
| | |
| LL | fn static_id_wrong_way<'a>(t: &'a ()) -> &'static () where 'static: 'a { |
| | -- lifetime `'a` defined here |
| LL | t |
| | ^ returning this value requires that `'a` must outlive `'static` |
| |
| error[E0521]: borrowed data escapes outside of function |
| --> $DIR/regions-static-bound.rs:17:5 |
| | |
| LL | fn error(u: &(), v: &()) { |
| | - - let's call the lifetime of this reference `'1` |
| | | |
| | `u` is a reference that is only valid in the function body |
| LL | static_id(&u); |
| | ^^^^^^^^^^^^^ |
| | | |
| | `u` escapes the function body here |
| | argument requires that `'1` must outlive `'static` |
| |
| error[E0521]: borrowed data escapes outside of function |
| --> $DIR/regions-static-bound.rs:19:5 |
| | |
| LL | fn error(u: &(), v: &()) { |
| | - - let's call the lifetime of this reference `'2` |
| | | |
| | `v` is a reference that is only valid in the function body |
| ... |
| LL | static_id_indirect(&v); |
| | ^^^^^^^^^^^^^^^^^^^^^^ |
| | | |
| | `v` escapes the function body here |
| | argument requires that `'2` must outlive `'static` |
| |
| error: aborting due to 3 previous errors; 3 warnings emitted |
| |
| For more information about this error, try `rustc --explain E0521`. |