eliminate extraneous choice point in $get_attr

This commit is contained in:
Mark Thom
2019-10-01 22:36:46 -06:00
parent abc7498a42
commit c0ad3231f5
2 changed files with 2 additions and 2 deletions

View File

@@ -24,7 +24,7 @@
'$get_from_list'([L|Ls], V, Attr) :-
nonvar(L),
( L \= Attr -> nonvar(Ls), '$get_from_list'(Ls, V, Attr)
; L = Attr, '$enqueue_attr_var'(V)
; L = Attr -> '$enqueue_attr_var'(V)
; '$get_from_list'(Ls, V, Attr)
).

View File

@@ -1252,7 +1252,7 @@ impl MachineState {
&SystemClauseType::GetAttributedVariableList => {
let attr_var = self.store(self.deref(self[temp_v!(1)].clone()));
let attr_var_list = match attr_var {
Addr::AttrVar(h) => h + 1,
Addr::AttrVar(h) => h + 1,
attr_var @ Addr::HeapCell(_) | attr_var @ Addr::StackCell(..) => {
// create an AttrVar in the heap.
let h = self.heap.h;