From d73c88f307d8601b619294054fc72b0afc9d1d26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADtor=20Santos=20Costa?= Date: Sun, 15 Dec 2013 08:34:52 +0000 Subject: [PATCH] handle running Prolog without top-level --- C/c_interface.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/C/c_interface.c b/C/c_interface.c index 8503fb2ca..c4c922dfa 100644 --- a/C/c_interface.c +++ b/C/c_interface.c @@ -2397,6 +2397,7 @@ YAP_EnterGoal(PredEntry *pe, Term *ptr, YAP_dogoalinfo *dgi) int out; BACKUP_MACHINE_REGS(); + LOCAL_PrologMode = UserMode; dgi->p = P; dgi->cp = CP; dgi->CurSlot = LOCAL_CurSlot; @@ -3252,12 +3253,13 @@ YAP_Init(YAP_init_args *yap_init) Yap_AttsSize = Atts*1024; else Yap_AttsSize = 2048*sizeof(CELL); + /* reset stacks */ + // Yap_StartSlots( PASS_REGS1 ); if (restore_result == DO_ONLY_CODE) { /* first, initialise the saved state */ Term t_goal = MkAtomTerm(AtomInitProlog); YAP_RunGoalOnce(t_goal); - // Yap_InitYaamRegs( 0 ); - /* reset stacks */ + Yap_InitYaamRegs( 0 ); return YAP_BOOT_FROM_SAVED_CODE; } else { return YAP_BOOT_FROM_SAVED_STACKS;