error[E0599]: no method named `poll` found for opaque type `impl Future` in the current scope --> $DIR/issue-108572.rs:12:9 | LL | fut.poll(cx); | ^^^^ method not found in `impl Future` | = help: method `poll` found on `Pin<&mut impl Future>`, see documentation for `std::pin::Pin` = help: self type must be pinned to call `Future::poll`, see https://rust-lang.github.io/async-book/04_pinning/01_chapter.html#pinning-in-practice help: consider pinning the expression | LL ~ let mut pinned = std::pin::pin!(fut); LL ~ pinned.as_mut().poll(cx); | error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0599`.