| error: `impl Trait` captures lifetime parameter, but it is not mentioned in `use<...>` precise captures list |
| --> $DIR/forgot-to-capture-lifetime.rs:1:52 |
| | |
| LL | fn lifetime_in_bounds<'a>(x: &'a ()) -> impl Into<&'a ()> + use<> { x } |
| | -- -----------^^------------ |
| | | | |
| | | lifetime captured due to being mentioned in the bounds of the `impl Trait` |
| | this lifetime parameter is captured |
| |
| error[E0700]: hidden type for `impl Sized` captures lifetime that does not appear in bounds |
| --> $DIR/forgot-to-capture-lifetime.rs:4:62 |
| | |
| LL | fn lifetime_in_hidden<'a>(x: &'a ()) -> impl Sized + use<> { x } |
| | -- ------------------ ^ |
| | | | |
| | | opaque type defined here |
| | hidden type `&'a ()` captures the lifetime `'a` as defined here |
| | |
| help: add `'a` to the `use<...>` bound to explicitly capture it |
| | |
| LL | fn lifetime_in_hidden<'a>(x: &'a ()) -> impl Sized + use<'a> { x } |
| | ++ |
| |
| error: aborting due to 2 previous errors |
| |
| For more information about this error, try `rustc --explain E0700`. |