]> git.lizzy.rs Git - rust.git/commitdiff
test BTreeMap::drain_filter for leaks
authorRalf Jung <post@ralfj.de>
Fri, 11 Sep 2020 10:20:08 +0000 (12:20 +0200)
committerRalf Jung <post@ralfj.de>
Fri, 11 Sep 2020 10:20:08 +0000 (12:20 +0200)
tests/run-pass/btreemap.rs

index 603674cc4503dc97ac3552ac6399ebb4f878f3d4..e639ba6225ca3a774473dad426a15c520c12f7b9 100644 (file)
@@ -1,4 +1,6 @@
+#![feature(btree_drain_filter)]
 use std::collections::{BTreeMap, BTreeSet};
+use std::mem;
 
 #[derive(PartialEq, Eq, PartialOrd, Ord)]
 pub enum Foo {
@@ -43,4 +45,9 @@ pub fn main() {
         b.insert(format!("key{}", i), i);
     }
     test_all_refs(&mut 13, b.values_mut());
+
+    // Test forgetting the drain.
+    let mut d = b.drain_filter(|_, i| *i < 30);
+    d.next().unwrap();
+    mem::forget(d);
 }