# Error code E0220

The associated type used was not defined in the trait.

Erroneous code example:

    #![allow(unused)]
    fn main() {
    trait T1 {
        type Bar;
    }

    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;
    }
    }

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:

    #![allow(unused)]
    fn main() {
    trait T1 {
        type Bar;
    }

    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;
    }
    }