From: Mark Thom Date: Tue, 16 Sep 2025 04:52:43 +0000 (-0700) Subject: fix off-by-one lam loop (#3081) X-Git-Tag: v0.10.0~8 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=24f431e2caa23d9ad8f03a445813a7c384344b3b;p=scryer-prolog.git fix off-by-one lam loop (#3081) --- diff --git a/src/machine/system_calls.rs b/src/machine/system_calls.rs index 5eb9a6d2..320c0d92 100644 --- a/src/machine/system_calls.rs +++ b/src/machine/system_calls.rs @@ -719,7 +719,7 @@ impl MachineState { let mut hare = orig_hare; let mut tortoise = hare; - for _ in 1..lam { + for _ in 0..lam { hare = step(&self.heap, self.heap[hare]); } @@ -743,8 +743,6 @@ impl MachineState { brent_st.cycle_step(&self.heap); } - // self.heap.pop_cell(); - let target_n = self.store(self.deref(self.registers[1])); self.unify_fixnum( /* FIXME this is not safe */