about summary refs log tree commit diff
path: root/compiler/rustc_error_codes/src/error_codes/E0719.md
blob: 6aec38b42a3b11a8485fee6e47c64b886a2fbedf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
An associated item was specified more than once in a trait object.

Erroneous code example:

```compile_fail,E0719
trait FooTrait {}
trait BarTrait {}

// error: associated type `Item` in trait `Iterator` is specified twice
type Foo = dyn Iterator<Item = u32, Item = u32>;
```

To fix this, remove the duplicate specifier:

Corrected example:

```
type Foo = dyn Iterator<Item = u32>; // ok!
```

For more information about associated types, see [the book][bk-at]. For more
information on associated type bounds, see [RFC 2289][rfc-2289].

[bk-at]: https://doc.rust-lang.org/book/ch19-03-advanced-traits.html#specifying-placeholder-types-in-trait-definitions-with-associated-types
[rfc-2289]: https://rust-lang.github.io/rfcs/2289-associated-type-bounds.html