diff options
| -rw-r--r-- | src/lib.rs | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -445,10 +445,16 @@ where while !it.is_finished() { it = match self.parser.next::<OM, EM>(it.clone(), &mut state) { Some(Ok((rest, output))) => { + debug_assert!( + rest.position() > it.position(), + "iterator failed to make progress" + ); + outputs = OM::combine(outputs, output, |mut acc, e| { acc.push(e); acc }); + rest } _ => break, |
