error[E0271]: type mismatch resolving `<Card<&str> as See<NUMBER>>::Inner == i32` --> tests/compile_fail/wrong_viewer.rs:36:34 | 36 | let card = change_i32_number(card, 2); // <-- This won't work | ----------------- ^^^^ expected `i32`, found `&str` | | | required by a bound introduced by this call | note: required by a bound in `change_i32_number` --> tests/compile_fail/wrong_viewer.rs:18:28 | 16 | fn change_i32_number<T>(mut var: T, by: i32) -> T | ----------------- required by a bound in this 17 | where 18 | T: Look<see_t::NUMBER, Inner = i32>, | ^^^^^^^^^^^ required by this bound in `change_i32_number`