]> git.lizzy.rs Git - rust.git/blobdiff - library/core/src/iter/adapters/mod.rs
Auto merge of #102193 - ferrocene:pa-remote-test-server-improvements, r=Mark-Simulacrum
[rust.git] / library / core / src / iter / adapters / mod.rs
index bf4fabad32a373e333c4f06443a3df6f0d5f0c1c..de3a534f81b8adf4b0655e4f1471232ec45fde64 100644 (file)
@@ -1,3 +1,4 @@
+use crate::const_closure::ConstFnMutClosure;
 use crate::iter::{InPlaceIterable, Iterator};
 use crate::ops::{ChangeOutputType, ControlFlow, FromResidual, NeverShortCircuit, Residual, Try};
 
@@ -203,12 +204,12 @@ fn try_fold<B, F, T>(&mut self, init: B, mut f: F) -> T
             .into_try()
     }
 
-    fn fold<B, F>(mut self, init: B, fold: F) -> B
+    fn fold<B, F>(mut self, init: B, mut fold: F) -> B
     where
         Self: Sized,
         F: FnMut(B, Self::Item) -> B,
     {
-        self.try_fold(init, NeverShortCircuit::wrap_mut_2(fold)).0
+        self.try_fold(init, ConstFnMutClosure::new(&mut fold, NeverShortCircuit::wrap_mut_2_imp)).0
     }
 }