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()));