error[E0282]: type annotations needed --> $DIR/issue-69455.rs:29:20 | LL | println!("{}", 23u64.test(xs.iter().sum())); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the associated function `new_display` | = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) help: consider specifying the generic argument | LL | println!("{}", 23u64.test(xs.iter().sum())::); | +++++ error[E0283]: type annotations needed --> $DIR/issue-69455.rs:29:41 | LL | println!("{}", 23u64.test(xs.iter().sum())); | ---- ^^^ cannot infer type of the type parameter `S` declared on the associated function `sum` | | | required by a bound introduced by this call | note: multiple `impl`s satisfying `u64: Test<_>` found --> $DIR/issue-69455.rs:11:1 | LL | impl Test for u64 { | ^^^^^^^^^^^^^^^^^^^^^^ ... LL | impl Test for u64 { | ^^^^^^^^^^^^^^^^^^^^^^ help: consider specifying the generic argument | LL | println!("{}", 23u64.test(xs.iter().sum::())); | +++++ error: aborting due to 2 previous errors Some errors have detailed explanations: E0282, E0283. For more information about an error, try `rustc --explain E0282`.