William Coleda <[EMAIL PROTECTED]> wrote:

> Still some GC bugs kicking around that neither Leo nor I have been
> able to find yet. (Note that the bug in [string] may actually be a PGE
> leak, as that code uses the glob rules).

Well there are GC and other bugs, probably. I get really strange results
when running the tcl tests:

$ make test

Failed Test      Stat Wstat Total Fail  Failed  List of Failed
---------------------------------------------------------------
t/cmd_continue.t    1   256     2    1  50.00%  2

*but* I see much more failing: some of cmd_concat, cmd_insert, cmd_proc,
and cmd_string, which aren't shown in the summary.

Turning off DOD/GC gives this result:

$ TEST_PROG_ARGS=-G make test

All tests successful.
Files=36, Tests=228, 43 wallclock secs (35.93 cusr +  6.15 csys = 42.08 CPU)

again with above failing tests unnoticed.

Running with -G didn't flush output w/o newlines properly, which is
fixed now.

Some more remarks:

lib/tclword.imc:

  .local pmc me
  me = interpinfo 16 #INTERPINFO_CURRENT_OBJECT
  setattribute me, "TclWord\x00chunks", emptyArray

this is extremly prone to errors. We don't guarantee that the constant
16 stays the current object. Just use C<self> here, which does the same:

 setattribute self, "TclWord\x00chunks", emptyArray

tcl.imc:

  $P2 = parser."parse"(input_line_PMC,zero,zero)
  (retcode,retval) = interpret($P1)

$P1 / $P2 seems to be a typo, which happens to work as it's likely that
the register allocator will use the same register.

leo

Reply via email to