From: Mark Thom Date: Sun, 6 Mar 2022 23:37:21 +0000 (-0700) Subject: compare functor arity first (#1327) X-Git-Tag: v0.9.1~127 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=18085972584e94f7f76aa8de7a589a3b1769b111;p=scryer-prolog.git compare functor arity first (#1327) --- diff --git a/src/machine/machine_state_impl.rs b/src/machine/machine_state_impl.rs index fc60afcc..8cac8b92 100644 --- a/src/machine/machine_state_impl.rs +++ b/src/machine/machine_state_impl.rs @@ -1720,7 +1720,7 @@ impl MachineState { let (name, arity) = cell_as_atom_cell!(self.heap[s2]) .get_name_and_arity(); - match (atom!("."), 2).cmp(&(name, arity)) { + match (2, atom!(".")).cmp(&(arity, name)) { Ordering::Equal => { tabu_list.insert((l1, s2)); @@ -1776,7 +1776,7 @@ impl MachineState { let (n2, a2) = cell_as_atom_cell!(self.heap[s2]) .get_name_and_arity(); - match (n1,a1).cmp(&(n2,a2)) { + match (a1,n1).cmp(&(a2, n2)) { Ordering::Equal => { tabu_list.insert((s1, s2)); @@ -1801,7 +1801,7 @@ impl MachineState { let (n1, a1) = cell_as_atom_cell!(self.heap[s1]) .get_name_and_arity(); - match (n1,a1).cmp(&(atom!("."), 2)) { + match (a1,n1).cmp(&(2, atom!("."))) { Ordering::Equal => { self.pdl.push(self.heap[l2]); self.pdl.push(self.heap[s1+1]);