]> Repositorios git - scryer-prolog.git/commitdiff
fix unify_float
authorMark Thom <[email protected]>
Sat, 11 Dec 2021 23:29:26 +0000 (16:29 -0700)
committerMark Thom <[email protected]>
Fri, 7 Jan 2022 04:44:41 +0000 (21:44 -0700)
src/machine/machine_state_impl.rs

index e408a6e9fed7f81a44b60743fc16a3370944b629..4f42756e8e91a030955d9d1a13e2e463eea47101 100644 (file)
@@ -667,9 +667,17 @@ impl MachineState {
 
         read_heap_cell!(value,
             (HeapCellValueTag::F64, f2) => {
-                if *f1 != *f2 {
-                    self.fail = true;
-                }
+                self.fail = **f1 != **f2;
+            }
+            (HeapCellValueTag::Cons, cons_ptr) => {
+                match_untyped_arena_ptr!(cons_ptr,
+                     (ArenaHeaderTag::F64, f2) => {
+                         self.fail = **f1 != **F64Ptr(f2);
+                     }
+                     _ => {
+                         self.fail = true;
+                     }
+                );
             }
             _ => {
                 self.fail = true;