1 error[E0308]: mismatched types
2 --> $DIR/issue-89352.rs:36:13
4 LL | let a = A::reborrow::<'ai, 's>(self.a.clone());
7 = note: expected type `<<A as GenAssoc<T>>::Iter<'s> as Sized>`
8 found type `<<A as GenAssoc<T>>::Iter<'ai> as Sized>`
9 note: the lifetime `'s` as defined here...
10 --> $DIR/issue-89352.rs:35:13
12 LL | fn iter<'s>(&'s self) -> Self::Iter<'s> {
14 note: ...does not necessarily outlive the lifetime `'ai` as defined here
15 --> $DIR/issue-89352.rs:30:6
17 LL | impl<'ai, T: 'ai, A: GenAssoc<T>> GenAssoc<T> for Wrapper<'ai, T, A>
20 error: aborting due to previous error
22 For more information about this error, try `rustc --explain E0308`.