Skip to content

Commit

Permalink
Modified E0220 to show error messages for more general cases
Browse files Browse the repository at this point in the history
  • Loading branch information
nikhilshagri committed Jun 21, 2016
1 parent 3313e50 commit 09ffe47
Showing 1 changed file with 25 additions and 6 deletions.
31 changes: 25 additions & 6 deletions src/librustc_typeck/diagnostics.rs
Expand Up @@ -2787,23 +2787,42 @@ You used an associated type which isn't defined in the trait.
Erroneous code example:
```compile_fail
trait Trait {
trait T1 {
type Bar;
}
type Foo = Trait<F=i32>; // error: associated type `F` not found for
// `Trait`
type Foo = T1<F=i32>; // error: associated type `F` not found for `T1`
// or:
trait T2 {
type Bar;
// error: Baz is used but not declared
fn return_bool(&self, &Self::Bar, &Self::Baz) -> bool;
}
```
Please verify you used the right trait or you didn't misspell the
Make sure that you have defined the associated type in the trait body.
Also, verify that you used the right trait or you didn't misspell the
associated type name. Example:
```
trait Trait {
trait T1 {
type Bar;
}
type Foo = Trait<Bar=i32>; // ok!
type Foo = T1<Bar=i32>; // ok!
// or:
trait T2 {
type Bar;
type Baz; // we declare `Baz` in our trait.
// and now we can use it here:
fn return_bool(&self, &Self::Bar, &Self::Baz) -> bool;
}
```
"##,

Expand Down

0 comments on commit 09ffe47

Please sign in to comment.