mirror of https://github.com/rust-lang/rust.git
ffdb471872
On borrow return type, suggest borrowing from arg or owned return type When we encounter a function with a return type that has an anonymous lifetime with no argument to borrow from, besides suggesting the `'static` lifetime we now also suggest changing the arguments to be borrows or changing the return type to be an owned type. ``` error[E0106]: missing lifetime specifier --> $DIR/variadic-ffi-6.rs:7:6 | LL | ) -> &usize { | ^ 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` | LL | ) -> &'static usize { | +++++++ help: instead, you are more likely to want to change one of the arguments to be borrowed... | LL | x: &usize, | + help: ...or alternatively, to want to return an owned value | LL - ) -> &usize { LL + ) -> usize { | ``` Fix #85843. |
||
---|---|---|
.. | ||
dyn-trait-underscore-in-struct.rs | ||
dyn-trait-underscore-in-struct.stderr | ||
dyn-trait-underscore.rs | ||
dyn-trait-underscore.stderr | ||
in-binder.rs | ||
in-binder.stderr | ||
in-fn-return-illegal.rs | ||
in-fn-return-illegal.stderr | ||
in-struct.rs | ||
in-struct.stderr | ||
underscore-lifetime-binders.rs | ||
underscore-lifetime-binders.stderr | ||
underscore-lifetime-elison-mismatch.rs | ||
underscore-lifetime-elison-mismatch.stderr | ||
underscore-outlives-bounds.rs | ||
underscore-outlives-bounds.stderr | ||
where-clause-inherent-impl-ampersand-rust2015.fixed | ||
where-clause-inherent-impl-ampersand-rust2015.rs | ||
where-clause-inherent-impl-ampersand-rust2015.stderr | ||
where-clause-inherent-impl-ampersand-rust2018.fixed | ||
where-clause-inherent-impl-ampersand-rust2018.rs | ||
where-clause-inherent-impl-ampersand-rust2018.stderr | ||
where-clause-inherent-impl-underscore.rs | ||
where-clause-inherent-impl-underscore.rust2015.stderr | ||
where-clause-inherent-impl-underscore.rust2018.stderr | ||
where-clause-trait-impl-region-2015.fixed | ||
where-clause-trait-impl-region-2015.rs | ||
where-clause-trait-impl-region-2015.stderr | ||
where-clause-trait-impl-region-2018.fixed | ||
where-clause-trait-impl-region-2018.rs | ||
where-clause-trait-impl-region-2018.stderr | ||
where-clause-trait-impl-underscore.rs | ||
where-clause-trait-impl-underscore.rust2015.stderr | ||
where-clause-trait-impl-underscore.rust2018.stderr | ||
where-clauses.rs | ||
where-clauses.stderr |