Add long error explanation for E0667

This commit is contained in:
Guillaume Gomez
2022-03-27 13:58:06 +02:00
parent 3fe3b89cd5
commit eae2903150
2 changed files with 19 additions and 1 deletions

View File

@@ -0,0 +1,18 @@
`impl Trait` is not allowed in path parameters.
Erroneous code example:
```compile_fail,E0667
fn some_fn(mut x: impl Iterator) -> <impl Iterator>::Item { // error!
x.next().unwrap()
}
```
You cannot use `impl Trait` in path parameters. If you want something
equivalent, you can do this instead:
```
fn some_fn<T: Iterator>(mut x: T) -> T::Item { // ok!
x.next().unwrap()
}
```