do not push stack variables to the heap in term_variables (#2087)
This commit is contained in:
@@ -6872,6 +6872,17 @@ impl Machine {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let stored_v = if stored_v.is_stack_var() {
|
||||||
|
let h = self.machine_st.heap.len();
|
||||||
|
|
||||||
|
self.machine_st.heap.push(heap_loc_as_cell!(h));
|
||||||
|
self.machine_st.bind(Ref::heap_cell(h), stored_v);
|
||||||
|
|
||||||
|
heap_loc_as_cell!(h)
|
||||||
|
} else {
|
||||||
|
stored_v
|
||||||
|
};
|
||||||
|
|
||||||
let mut seen_set = IndexSet::with_hasher(FxBuildHasher::default());
|
let mut seen_set = IndexSet::with_hasher(FxBuildHasher::default());
|
||||||
|
|
||||||
self.machine_st.variable_set(&mut seen_set, stored_v);
|
self.machine_st.variable_set(&mut seen_set, stored_v);
|
||||||
|
|||||||
Reference in New Issue
Block a user