Rollup merge of #123247 - veera-sivarajan:fix-error-code-E0637-example-code, r=fmease
Mention Both HRTB and Generic Lifetime Param in `E0637` documentation The compiler (rustc 1.77.0) error for `and_without_explicit_lifetime()` in the erroneous code example suggests using a HRTB. But, the corrected example uses an explicit lifetime parameter. This PR fixes it so that the documentation and the compiler suggestion for error code `E0637` are consistent with each other.
This commit is contained in:
commit
7427812261
1 changed files with 17 additions and 4 deletions
|
@ -1,5 +1,5 @@
|
||||||
`'_` lifetime name or `&T` without an explicit lifetime name has been used
|
`'_` lifetime name or `&T` without an explicit lifetime name has been used
|
||||||
on illegal place.
|
in an illegal place.
|
||||||
|
|
||||||
Erroneous code example:
|
Erroneous code example:
|
||||||
|
|
||||||
|
@ -13,7 +13,14 @@ fn underscore_lifetime<'_>(str1: &'_ str, str2: &'_ str) -> &'_ str {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn and_without_explicit_lifetime<T>()
|
fn without_explicit_lifetime<T>()
|
||||||
|
where
|
||||||
|
T: Iterator<Item = &u32>,
|
||||||
|
//^ `&` without an explicit lifetime name
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
fn without_hrtb<T>()
|
||||||
where
|
where
|
||||||
T: Into<&u32>,
|
T: Into<&u32>,
|
||||||
//^ `&` without an explicit lifetime name
|
//^ `&` without an explicit lifetime name
|
||||||
|
@ -40,9 +47,15 @@ fn underscore_lifetime<'a>(str1: &'a str, str2: &'a str) -> &'a str {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn and_without_explicit_lifetime<'foo, T>()
|
fn without_explicit_lifetime<'a, T>()
|
||||||
where
|
where
|
||||||
T: Into<&'foo u32>,
|
T: Iterator<Item = &'a u32>,
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
fn without_hrtb<T>()
|
||||||
|
where
|
||||||
|
T: for<'foo> Into<&'foo u32>,
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue