From 35b8f69f92fd6988371cbae639520c2331141d97 Mon Sep 17 00:00:00 2001 From: Mark Thom Date: Sun, 17 Apr 2022 12:19:48 -0600 Subject: [PATCH] fix panic caused by jmp offset off by one error (#1429) --- src/codegen.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/codegen.rs b/src/codegen.rs index 5baa3bef..c0d4bd02 100644 --- a/src/codegen.rs +++ b/src/codegen.rs @@ -1076,7 +1076,11 @@ impl<'b, TermMarker: Allocator> CodeGenerator<'b, TermMarker> { code_offsets.index_term(arg, index, &mut clause_index_info, self.atom_tbl); } - if !(clauses.len() == 1 && self.settings.is_extensible) { + if !(code_offsets.no_indices() && clauses.len() == 1 && self.settings.is_extensible) { + // the peculiar condition of this block, when false, + // anticipates code.pop_front() being called about a + // dozen lines below. + debug_assert_eq!(code.len(), 1); self.increment_jmp_by_locs_by(code.len()); } -- 2.54.0