## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# Error code E0226

More than one explicit lifetime bound was used on a trait object.

Example of erroneous code:

    #![allow(unused)]
    fn main() {
    trait Foo {}

    type T<'a, 'b> = dyn Foo + 'a + 'b; // error: Trait object `arg` has two
                                        //        lifetime bound, 'a and 'b.
    }

Here `T` is a trait object with two explicit lifetime bounds, 'a and 'b.

Only a single explicit lifetime bound is permitted on trait objects. To fix this error, consider removing one of the lifetime bounds:

    #![allow(unused)]
    fn main() {
    trait Foo {}

    type T<'a> = dyn Foo + 'a;
    }