error[E0309]: the parameter type `T` may not live long enough --> $DIR/regions-implied-bounds-projection-gap-1.rs:16:5 | LL | wf::<&'x T>(); | ^^^^^^^^^^^ ...so that the type `T` will meet its required lifetime bounds | help: consider adding an explicit lifetime bound... | LL | fn func<'x, T:Trait1<'x> + 'x>(t: &'x T::Foo) | ++++ error: aborting due to previous error For more information about this error, try `rustc --explain E0309`.