]> git.lizzy.rs Git - rust.git/commitdiff
Add regression test for MIR drop generation in async loops
authorTaylor Cramer <cramertj@google.com>
Wed, 26 Jun 2019 17:23:27 +0000 (10:23 -0700)
committerTaylor Cramer <cramertj@google.com>
Wed, 26 Jun 2019 17:40:06 +0000 (10:40 -0700)
Fixes #61986.

src/test/ui/async-await/issues/issue-61986.rs [new file with mode: 0644]

diff --git a/src/test/ui/async-await/issues/issue-61986.rs b/src/test/ui/async-await/issues/issue-61986.rs
new file mode 100644 (file)
index 0000000..da8b22b
--- /dev/null
@@ -0,0 +1,21 @@
+// compile-pass
+// edition:2018
+//
+// Tests that we properly handle StorageDead/StorageLives for temporaries
+// created in async loop bodies.
+
+#![feature(async_await)]
+
+async fn bar() -> Option<()> {
+    Some(())
+}
+
+async fn listen() {
+    while let Some(_) = bar().await {
+        String::new();
+    }
+}
+
+fn main() {
+    listen();
+}