YAP would break when gc was called from portray:
always save arguments before calling plwrite with possible portray only do it for portray because plwrite may be called from unsafe environments make Slot machinery mainstream. git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@637 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
@@ -60,7 +60,7 @@ send_tracer_message(char *start, char *name, Int arity, char *mname, CELL *args)
|
||||
Portray_delays = TRUE;
|
||||
#endif
|
||||
#endif
|
||||
plwrite(args[i], TracePutchar, 4);
|
||||
plwrite(args[i], TracePutchar, Handle_vars_f);
|
||||
#if DEBUG
|
||||
#if COROUTINING
|
||||
Portray_delays = FALSE;
|
||||
@@ -112,12 +112,13 @@ low_level_trace(yap_low_level_port port, PredEntry *pred, CELL *args)
|
||||
/* extern int gc_calls; */
|
||||
|
||||
vsc_count++;
|
||||
/* if (vsc_count < 24200) return; */
|
||||
/* return;*/
|
||||
/* if (vsc_count < 38372100LL) return;*/
|
||||
/* if (vsc_count == 80) {
|
||||
printf("Here I go\n");
|
||||
} */
|
||||
/* if (vsc_count > 500000) exit(0); */
|
||||
/* if (gc_calls < 1) return;*/
|
||||
/* if (gc_calls < 1) return; */
|
||||
#if defined(__GNUC__)
|
||||
YP_fprintf(YP_stderr,"%llu ", vsc_count);
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user