error: concrete type differs from previous defining opaque type use --> $DIR/generic_duplicate_param_use5.rs:17:5 | LL | (u, t) | ^^^^^^ expected `(T, U)`, got `(U, T)` | note: previous use here --> $DIR/generic_duplicate_param_use5.rs:13:5 | LL | (t, u) | ^^^^^^ error[E0277]: `T` doesn't implement `Debug` --> $DIR/generic_duplicate_param_use5.rs:8:18 | LL | type Two = impl Debug; | ^^^^^^^^^^ `T` cannot be formatted using `{:?}` because it doesn't implement `Debug` | = note: required because of the requirements on the impl of `Debug` for `(T, U)` help: consider restricting type parameter `T` | LL | type Two = impl Debug; | +++++++++++++++++ error[E0277]: `U` doesn't implement `Debug` --> $DIR/generic_duplicate_param_use5.rs:8:18 | LL | type Two = impl Debug; | ^^^^^^^^^^ `U` cannot be formatted using `{:?}` because it doesn't implement `Debug` | = note: required because of the requirements on the impl of `Debug` for `(T, U)` help: consider restricting type parameter `U` | LL | type Two = impl Debug; | +++++++++++++++++ error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0277`.