]> Repositorios git - scryer-prolog.git/commitdiff
proceed is a jump instruction
authorMark Thom <[email protected]>
Sat, 4 Nov 2017 16:23:58 +0000 (10:23 -0600)
committerMark Thom <[email protected]>
Sat, 4 Nov 2017 16:23:58 +0000 (10:23 -0600)
src/prolog/ast.rs
src/prolog/machine.rs

index 8ce3e39332418bcaa0ef6d729f60213ce96714f0..2f509fde8dbe4d3a28bb37b3546059a75e5c4b9c 100644 (file)
@@ -457,6 +457,7 @@ impl ControlInstruction {
             &ControlInstruction::ThrowCall => true,
             &ControlInstruction::ThrowExecute => true,
             &ControlInstruction::Goto(_, _) => true,
+            &ControlInstruction::Proceed => true,
             _ => false
         }
     }
index c7b5d4c0d52dcf1366abde4380e4cbbe82192cd5..f99ae4864329d255039272a345f1f6112548fe9e 100644 (file)
@@ -412,11 +412,7 @@ impl Machine {
                     &Line::Control(ref ctrl_instr) if ctrl_instr.is_jump_instr() => {
                         self.record_var_places(cn, alloc_locs, heap_locs);
                         cn += 1;
-                    },
-                    &Line::BuiltIn(BuiltInInstruction::IsAtomic(_))
-                  | &Line::BuiltIn(BuiltInInstruction::IsVar(_)) => {
-                      self.record_var_places(cn, alloc_locs, heap_locs);
-                    },
+                    },                    
                     _ => {}
                 }