| error[E0106]: missing lifetime specifier |
| --> $DIR/impl-trait-missing-lifetime.rs:9:54 |
| | |
| LL | fn g(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| | ^^ expected named lifetime parameter |
| | |
| = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from |
| help: consider using the `'static` lifetime, but this is uncommon unless you're returning a borrowed value from a `const` or a `static`, or if you will only have owned values |
| | |
| LL | fn g(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'static ()> { x.next() } |
| | ~~~~~~~ |
| help: consider introducing a named lifetime parameter |
| | |
| LL | fn g<'a>(mut x: impl Iterator<Item = &'a ()>) -> Option<&'a ()> { x.next() } |
| | ++++ ~~~ ~~~ |
| help: alternatively, you might want to return an owned value |
| | |
| LL - fn g(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| LL + fn g(mut x: impl Iterator<Item = &'_ ()>) -> Option<()> { x.next() } |
| | |
| |
| error[E0106]: missing lifetime specifier |
| --> $DIR/impl-trait-missing-lifetime.rs:17:60 |
| | |
| LL | async fn i(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| | ^^ expected named lifetime parameter |
| | |
| = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from |
| help: consider using the `'static` lifetime, but this is uncommon unless you're returning a borrowed value from a `const` or a `static`, or if you will only have owned values |
| | |
| LL | async fn i(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'static ()> { x.next() } |
| | ~~~~~~~ |
| help: consider introducing a named lifetime parameter |
| | |
| LL | async fn i<'a>(mut x: impl Iterator<Item = &'a ()>) -> Option<&'a ()> { x.next() } |
| | ++++ ~~~ ~~~ |
| help: alternatively, you might want to return an owned value |
| | |
| LL - async fn i(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| LL + async fn i(mut x: impl Iterator<Item = &'_ ()>) -> Option<()> { x.next() } |
| | |
| |
| error: lifetime may not live long enough |
| --> $DIR/impl-trait-missing-lifetime.rs:17:69 |
| | |
| LL | async fn i(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| | ----------------------------------------------------------------- ^^^^^^^^ returning this value requires that `'1` must outlive `'static` |
| | | |
| | return type `impl Future<Output = Option<&'static ()>>` contains a lifetime `'1` |
| |
| error: lifetime may not live long enough |
| --> $DIR/impl-trait-missing-lifetime.rs:9:63 |
| | |
| LL | fn g(mut x: impl Iterator<Item = &'_ ()>) -> Option<&'_ ()> { x.next() } |
| | ----- has type `x` ^^^^^^^^ returning this value requires that `'1` must outlive `'static` |
| |
| error: aborting due to 4 previous errors |
| |
| For more information about this error, try `rustc --explain E0106`. |