diff --git a/C/errors.c b/C/errors.c index c4ac88921..16ff4954f 100644 --- a/C/errors.c +++ b/C/errors.c @@ -455,6 +455,7 @@ Yap_Error(yap_error_number type, Term where, char *format,...) where = TermNil; Yap_PrologMode &= ~AbortMode; Yap_PrologMode |= InErrorMode; + P = FAILCODE; } else { if (IsVarTerm(where)) { /* we must be careful someone gave us a copy to a local variable */ diff --git a/pl/boot.yap b/pl/boot.yap index 61e10d3f4..cc49ec6f1 100755 --- a/pl/boot.yap +++ b/pl/boot.yap @@ -102,10 +102,14 @@ true :- true. % '$set_read_error_handler'(error), let the user do that nb_setval('$open_expands_filename',true), nb_setval('$trace',off), + nb_setval('$system_mode',off), + nb_setval('$chr_toplevel_show_store',false), nb_setval('$assert_all',off), nb_setval('$if_skip_mode',no_skip), b_setval('$spy_glist',[]), - nb_setval('$spy_gn',1). + nb_setval('$spy_gn',1), + nb_setval('$debug_run',off), + nb_setval('$debug_jump',off). '$init_consult' :- nb_setval('$lf_verbose',informational), @@ -191,7 +195,7 @@ true :- true. nb_setval('$spy_gn',1), % stop at spy-points if debugging is on. nb_setval('$debug_run',off), - nb_setval('$debug_zip',off), + nb_setval('$debug_jump',off), prompt(_,' |: '), '$command'((?-Command),Varnames,Pos,top), '$sync_mmapped_arrays', @@ -1010,6 +1014,8 @@ break :- nb_getval('$system_mode',SystemMode), nb_getval('$trace',Trace), nb_setval('$trace',off), + nb_getval('$debug_jump',Jump), + nb_getval('$debug_run',Run), '$debug_on'(Debug), '$debug_on'(false), nb_getval('$break',BL), NBL is BL+1, @@ -1026,6 +1032,8 @@ break :- nb_setval('$spy_gn',SPY_GN), '$set_input'(InpStream), '$set_output'(OutStream), '$debug_on'(Debug), + nb_setval('$debug_jump',Jump), + nb_setval('$debug_run',Run), nb_setval('$trace',Trace), nb_setval('$break',BL), nb_setval('$system_mode',SystemMode). diff --git a/pl/signals.yap b/pl/signals.yap index 606273eb3..1a925ff12 100644 --- a/pl/signals.yap +++ b/pl/signals.yap @@ -184,7 +184,8 @@ '$creep'. % do not debug if we are zipping through. '$start_creep'([Mod|G]) :- - nb_getval('$debug_zip',on), + nb_getval('$debug_run',Run), + Run \= off, '$zip'(-1, G, Mod), !, '$signal_creep', '$execute_nonstop'(G,Mod).