error[E0309]: the parameter type `T` may not live long enough
  --> $DIR/regions-implied-bounds-projection-gap-1.rs:16:5
   |
LL | fn func<'x, T:Trait1<'x>>(t: &'x T::Foo)
   |         -- the parameter type `T` must be valid for the lifetime `'x` as defined here...
LL | {
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 1 previous error

For more information about this error, try `rustc --explain E0309`.
