about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGiacomo Stevanato <giaco.stevanato@gmail.com>2021-02-19 15:25:09 +0100
committerGiacomo Stevanato <giaco.stevanato@gmail.com>2021-03-05 19:09:23 +0100
commitc1bfb9a78db6d481be1d03355672712c766e20b0 (patch)
tree43d5589078859790283c1b35d2b53da1b3ad26ed
parent2371914a05f8f2763dffe6e2511d0870bcd6b461 (diff)
downloadrust-c1bfb9a78db6d481be1d03355672712c766e20b0.tar.gz
rust-c1bfb9a78db6d481be1d03355672712c766e20b0.zip
Add relevant test
-rw-r--r--library/core/tests/iter/adapters/zip.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/library/core/tests/iter/adapters/zip.rs b/library/core/tests/iter/adapters/zip.rs
index a5977103929..000c15f72c8 100644
--- a/library/core/tests/iter/adapters/zip.rs
+++ b/library/core/tests/iter/adapters/zip.rs
@@ -265,3 +265,26 @@ fn test_issue_82282() {
         panic!();
     }
 }
+
+#[test]
+fn test_issue_82291() {
+    use std::cell::Cell;
+
+    let mut v1 = [()];
+    let v2 = [()];
+
+    let called = Cell::new(0);
+
+    let mut zip = v1
+        .iter_mut()
+        .map(|r| {
+            called.set(called.get() + 1);
+            r
+        })
+        .zip(&v2);
+
+    zip.next_back();
+    assert_eq!(called.get(), 1);
+    zip.next();
+    assert_eq!(called.get(), 1);
+}