error[E0119]: conflicting implementations of trait `Trait<for<'a> fn(<_ as WithAssoc1<'a>>::Assoc, <_ as WithAssoc2<'a>>::Assoc)>` for type `(_, _)`
  --> $DIR/issue-102048.rs:38:1
   |
LL | / impl<T, U> Trait<for<'a> fn(<T as WithAssoc1<'a>>::Assoc, <U as WithAssoc2<'a>>::Assoc)> for (T, U)
LL | | where
LL | |     T: for<'a> WithAssoc1<'a> + for<'a> WithAssoc2<'a, Assoc = i32>,
LL | |     U: for<'a> WithAssoc2<'a>,
   | |______________________________- first implementation here
...
LL | / impl<T, U> Trait<for<'a> fn(<U as WithAssoc1<'a>>::Assoc, u32)> for (T, U) where
LL | |     U: for<'a> WithAssoc1<'a>
   | |_____________________________^ conflicting implementation for `(_, _)`

error: aborting due to 1 previous error

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