diff --git a/C/cdmgr.c b/C/cdmgr.c index 3ce9c51ec..f8fdfe713 100644 --- a/C/cdmgr.c +++ b/C/cdmgr.c @@ -11,8 +11,12 @@ * File: cdmgr.c * * comments: Code manager * * * -* Last rev: $Date: 2008-01-23 17:57:44 $,$Author: vsc $ * +* Last rev: $Date: 2008-02-22 15:08:33 $,$Author: vsc $ * * $Log: not supported by cvs2svn $ +* Revision 1.218 2008/01/23 17:57:44 vsc +* valgrind it! +* enable atom garbage collection. +* * Revision 1.217 2007/12/26 19:50:40 vsc * new version of clp(fd) * fix deadlock with empty args facts in clause/2. @@ -3331,16 +3335,17 @@ static Term all_calls(void) { Term ts[3]; - Functor f = Yap_MkFunctor(AtomLocal,3); + Functor f = Yap_MkFunctor(AtomLocal,4); ts[0] = MkIntegerTerm((Int)P); + ts[1] = MkIntegerTerm((Int)CP); if (yap_flags[STACK_DUMP_ON_ERROR_FLAG]) { - ts[1] = all_envs(ENV); - ts[2] = all_cps(B); + ts[2] = all_envs(ENV); + ts[3] = all_cps(B); } else { - ts[1] = ts[2] = TermNil; + ts[2] = ts[3] = TermNil; } - return(Yap_MkApplTerm(f,3,ts)); + return(Yap_MkApplTerm(f,4,ts)); } Term diff --git a/C/iopreds.c b/C/iopreds.c index 31a3d812c..d9ed97857 100644 --- a/C/iopreds.c +++ b/C/iopreds.c @@ -1233,6 +1233,8 @@ post_process_eof(StreamDesc *s) static int console_post_process_read_char(int ch, StreamDesc *s) { + /* the character is also going to be output by the console handler */ + console_count_output_char(ch,Stream+StdErrStream); if (ch == '\n') { ++s->linecount; ++s->charcount; diff --git a/C/threads.c b/C/threads.c index abbe3d7ed..c4785d78b 100644 --- a/C/threads.c +++ b/C/threads.c @@ -695,8 +695,15 @@ p_thread_runtime(void) return Yap_unify(ARG1,MkIntTerm(0)); } +static Int +p_thread_self(void) +{ /* '$thread_runtime'(+P) */ + return Yap_unify(ARG1,MkIntTerm(0)); +} + void Yap_InitThreadPreds(void) { + Yap_InitCPred("$thread_self", 1, p_thread_self, SafePredFlag|HiddenPredFlag); Yap_InitCPred("$no_threads", 0, p_no_threads, SafePredFlag|HiddenPredFlag); Yap_InitCPred("$max_threads", 1, p_max_threads, SafePredFlag|HiddenPredFlag); Yap_InitCPred("$nof_threads", 1, p_nof_threads, SafePredFlag|HiddenPredFlag); diff --git a/Makefile.in b/Makefile.in index ca9625267..e71326536 100644 --- a/Makefile.in +++ b/Makefile.in @@ -185,10 +185,14 @@ PL_SOURCES= \ $(srcdir)/pl/checker.yap $(srcdir)/pl/chtypes.yap \ $(srcdir)/pl/consult.yap \ $(srcdir)/pl/corout.yap $(srcdir)/pl/debug.yap \ + $(srcdir)/pl/depth_bound.yap \ $(srcdir)/pl/directives.yap \ + $(srcdir)/pl/eam.yap \ $(srcdir)/pl/errors.yap $(srcdir)/pl/grammar.yap \ - $(srcdir)/pl/ground.yap $(srcdir)/pl/init.yap \ - $(srcdir)/pl/depth_bound.yap $(srcdir)/pl/listing.yap \ + $(srcdir)/pl/ground.yap + $(srcdir)/pl/hacks.yap + $(srcdir)/pl/init.yap \ + $(srcdir)/pl/listing.yap \ $(srcdir)/pl/load_foreign.yap \ $(srcdir)/pl/modules.yap $(srcdir)/pl/preds.yap \ $(srcdir)/pl/profile.yap \ @@ -199,7 +203,6 @@ PL_SOURCES= \ $(srcdir)/pl/strict_iso.yap \ $(srcdir)/pl/tabling.yap $(srcdir)/pl/threads.yap \ $(srcdir)/pl/utils.yap \ - $(srcdir)/pl/eam.yap \ $(srcdir)/pl/yapor.yap $(srcdir)/pl/yio.yap YAPDOCS=$(srcdir)/docs/yap.tex $(srcdir)/docs/chr.tex \ diff --git a/changes-5.1.html b/changes-5.1.html index 0a903425f..b53368ed8 100644 --- a/changes-5.1.html +++ b/changes-5.1.html @@ -17,6 +17,11 @@ xb

Yap-5.1.3: