Rust errors / Types and traits
Rust compiler error · checked with rustc 1.99.0
Rust error E0576: cannot find associated type `You` in trait `Hello`
What it meansAn associated item wasn't found in the given type.
What rustc prints
error[E0576]: cannot find associated type `You` in trait `Hello` --> main.rs:4:36 | 2 | type Who; | --------- associated type `Who` defined here 3 | 4 | fn hello() -> <Self as Hello>::You; // error! | ^^^ not found in `Hello` | help: maybe you meant this associated type | 4 - fn hello() -> <Self as Hello>::You; // error! 4 + fn hello() -> <Self as Hello>::Who; // error! |
Real output of rustc 1.99.0 compiling the official example below (2021 edition). Your names and line numbers will differ; the first line is the part to match.
The compiler team's explanation
An associated item wasn't found in the given type.
Erroneous code example:
trait Hello {
type Who;
fn hello() -> <Self as Hello>::You; // error!
}
In this example, we tried to use the nonexistent associated type You of the Hello trait. To fix this error, use an existing associated type:
trait Hello {
type Who;
fn hello() -> <Self as Hello>::Who; // ok!
}From rustc --explain E0576 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.
Related errors
- E0308mismatched types
- E0277the trait bound is not satisfied
- E0599no method named X found in the current scope
- E0433failed to resolve
- E0574expected struct, variant or union type, found module `mordor`
- E0575cannot find associated type `Mythology` in trait `Age`
- E0579lower bound for range pattern must be less than upper bound
- E0580`main` function has wrong type
Up next
Often hit nextE0308: mismatched typesA related error from the same family.Read it next →Did this answer your question?