diff --git a/src/expressions/await-expr.md b/src/expressions/await-expr.md index 95037d73d..a6e7dc583 100644 --- a/src/expressions/await-expr.md +++ b/src/expressions/await-expr.md @@ -52,12 +52,13 @@ Effectively, an `.await` expression is roughly equivalent to the following (this desugaring is not normative): ```rust,ignore -let future = /* */; -loop { - let mut pin = unsafe { Pin::new_unchecked(&mut future) }; - match Pin::future::poll(Pin::borrow(&mut pin), &mut current_context) { - Poll::Ready(r) => break r, - Poll::Pending => yield Poll::Pending, +match /* */ { + mut pinned => loop { + let mut pin = unsafe { Pin::new_unchecked(&mut pinned) }; + match Pin::future::poll(Pin::borrow(&mut pin), &mut current_context) { + Poll::Ready(r) => break r, + Poll::Pending => yield Poll::Pending, + } } } ```