error[E0277]: the trait bound `(i32, i32, i32): Foo<usize>` is not satisfied --> $DIR/impl-substs.rs:13:23 | LL | Foo::<usize>::foo((1i32, 1i32, 1i32)); | ----------------- ^^^^^^^^^^^^^^^^^^ an impl did not match: usize _ _ | | | required by a bound introduced by this call | = help: the trait `Foo<usize>` is not implemented for `(i32, i32, i32)` = help: the trait `Foo<A>` is implemented for `(A, B, C)` error: aborting due to previous error For more information about this error, try `rustc --explain E0277`.