fix debugger to do well nonsource predicates.

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1354 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc
2005-08-02 03:09:52 +00:00
parent dda96dc613
commit b8f1beec74
11 changed files with 326 additions and 94 deletions

View File

@@ -63,6 +63,7 @@ do_not_compile_expressions :- set_value('$c_arith',[]).
).
'$do_c_built_in'(once(G), M, ('$save_current_choice_point'(CP),NG,'$$cut_by'(CP))) :- !,
'$do_c_built_in'(G,M,NG).
'$do_c_built_in'('C'(A,B.C), _, (A=[B|C])) :- !.
'$do_c_built_in'(X is Y, _, P) :-
nonvar(Y), % Don't rewrite variables
!,

View File

@@ -419,8 +419,10 @@ debugging :-
'$do_spy'(Cl, M, CP, InControl).
'$spycall'(G, M, InControl) :-
% I lost control here.
'$continue_debugging'(InControl,G,M),
'$execute_nonstop'(G, M).
CP is '$last_choice_pt',
'$static_clause'(G,M,C,R),
'$continue_debugging'(InControl, G, M),
'$execute_clause'(G, M, R, CP).
'$trace'(P,G,Module,L) :-
flush_output(user_output),