From c0cd37105624138b60ef555666699b22f7cd4366 Mon Sep 17 00:00:00 2001 From: Mark Thom Date: Thu, 14 Nov 2024 22:04:09 -0700 Subject: [PATCH] dereference clause_clause value, reserve more parser space (#2579) --- src/machine/loader.rs | 2 +- src/parser/parser.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/machine/loader.rs b/src/machine/loader.rs index 18a4c973..34499ced 100644 --- a/src/machine/loader.rs +++ b/src/machine/loader.rs @@ -2462,7 +2462,7 @@ impl<'a> Loader<'a, LiveLoadAndMachineState<'a>> { } let machine_st = LiveLoadAndMachineState::machine_st(&mut self.payload); - let value = machine_st.store(MachineState::deref(&machine_st, machine_st[term_reg])); + let value = machine_st.store(MachineState::deref(machine_st, machine_st[term_reg])); self.add_clause_clause_if_dynamic(value)?; diff --git a/src/parser/parser.rs b/src/parser/parser.rs index 9313e9e9..a9240f22 100644 --- a/src/parser/parser.rs +++ b/src/parser/parser.rs @@ -1287,9 +1287,9 @@ impl<'a, R: CharRead> LexerParser<'a, R> { }; // the parser uses conditional indirection in many places so - // the reserved size should be at least 3 * term_byte_size + // the reserved size should be at least 4 * term_byte_size // so all cells are accounted for. - let writer = match self.machine_st.heap.reserve(cell_index!(3 * term_byte_size)) { + let writer = match self.machine_st.heap.reserve(cell_index!(4 * term_byte_size)) { Ok(term) => term, Err(_err_loc) => { return Err(ParserError::ResourceError(self.loc_to_err_src())); -- 2.54.0