error[E0308]: mismatched types --> $DIR/name-mentioning-macro.rs:8:9 | LL | fn foo(x: impl Foo) { | ---------------- expected this type parameter LL | let () = x; | ^^ - this expression has type `impl Foo` | | | expected type parameter `impl Foo`, found `()` | = note: expected type parameter `impl Foo` found unit type `()` error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0308`.