diff --git a/src/adaptors/mod.rs b/src/adaptors/mod.rs index 84bbf98e0..564d83439 100644 --- a/src/adaptors/mod.rs +++ b/src/adaptors/mod.rs @@ -127,8 +127,8 @@ where I: Iterator, J: Iterator, { - i: I, - j: J, + i: Fuse, + j: Fuse, next_coming_from_j: bool, } @@ -139,8 +139,8 @@ where J: Iterator, { InterleaveShortest { - i, - j, + i: i.fuse(), + j: j.fuse(), next_coming_from_j: false, } } @@ -231,8 +231,8 @@ where impl FusedIterator for InterleaveShortest where - I: FusedIterator, - J: FusedIterator, + I: Iterator, + J: Iterator, { } diff --git a/tests/quick.rs b/tests/quick.rs index f96418f40..c0f765e10 100644 --- a/tests/quick.rs +++ b/tests/quick.rs @@ -1880,7 +1880,7 @@ quickcheck! { fn fused_interleave_shortest(a: Iter, b: Iter) -> bool { - !is_fused(a.clone().interleave_shortest(b.clone())) && + is_fused(a.clone().interleave_shortest(b.clone())) && is_fused(a.fuse().interleave_shortest(b.fuse())) }