error[E0308]: mismatched types --> $DIR/issue-78722.rs:12:20 | LL | type F = impl core::future::Future; | -------------------------------------- the expected opaque type ... LL | let f: F = async { 1 }; | - ^^^^^^^^^^^ expected opaque type, found a different opaque type | | | expected due to this | ::: $SRC_DIR/core/src/future/mod.rs:LL:COL | LL | pub const fn from_generator(gen: T) -> impl Future | ------------------------------- the found opaque type | = note: expected opaque type `impl Future` found opaque type `impl Future` = note: distinct uses of `impl Trait` result in different opaque types error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.