error[E0308]: mismatched types --> $DIR/issue-102206.rs:6:27 | LL | std::mem::size_of_val(foo()); | --------------------- ^^^^^ | | | | | expected reference, found opaque type | | help: consider borrowing here: `&foo()` | arguments to this function are incorrect | note: while checking the return type of the `async fn` --> $DIR/issue-102206.rs:3:16 | LL | async fn foo() {} | ^ checked the `Output` of this `async fn`, found opaque type = note: expected reference `&_` found opaque type `impl Future` note: function defined here --> $SRC_DIR/core/src/mem/mod.rs:LL:COL error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.