error[E0283]: type annotations needed --> $DIR/issue-86162-1.rs:7:9 | LL | foo(gen()); //<- Do not suggest `foo::()`! | --- ^^^ cannot infer type of the type parameter `T` declared on the function `gen` | | | required by a bound introduced by this call | = note: cannot satisfy `_: Clone` note: required by a bound in `foo` --> $DIR/issue-86162-1.rs:3:16 | LL | fn foo(x: impl Clone) {} | ^^^^^ required by this bound in `foo` help: consider specifying the generic argument | LL | foo(gen::()); //<- Do not suggest `foo::()`! | +++++ error: aborting due to previous error For more information about this error, try `rustc --explain E0283`.