summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_error_codes/src/error_codes/E0667.md
blob: 0709a24c4331242bab2461f4241ea8920221201b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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()
}
```