On Thu, Jul 17, 2008 at 12:31 PM, chromatic via RT <[EMAIL PROTECTED]> wrote: > On Thursday 17 July 2008 08:49:05 Will Coleda wrote: > >> I committed a patch (r29559) that updates all the tcl.ops to be more >> like the 'die' opcode in how the exception object is constructed and >> created. Still segfaulting. As long as I'm in here, I'm going to >> eliminate the forms of tcl_error that are now identical to 'die'. > > Throw a backtrace this way (better if you can figure out what's null) and it > might tickle out some solutions. > > -- c > > >
Found the segfault occurred shortly after trying to get the "stacktrace" attribute from an exception; Allison noted that src/pmc/exception.pmc's get_pmc_keyed and set_pmc_keyed are using getprop/setprop. This naive patch makes them use the new ATTR implementation. Index: src/pmc/exception.pmc =================================================================== --- src/pmc/exception.pmc (revision 29555) +++ src/pmc/exception.pmc (working copy) @@ -260,7 +260,7 @@ VTABLE PMC *get_pmc_keyed(PMC *key) { STRING *s = key_string(INTERP, key); - return SELF.getprop(s); + return SELF.get_attr_str(s); } @@ -389,7 +389,7 @@ VTABLE void set_pmc_keyed(PMC *key, PMC *value) { STRING *s = key_string(INTERP, key); - SELF.setprop(s, value); + SELF.set_attr_str(s, value); } - This dramatically improves tcl's pass rate (still not 100%, though) - Make test now reports failures: t/examples/shootout.t (Wstat: 2816 Tests: 20 Failed: 11) Failed tests: 3, 6-11, 14, 17-19 Non-zero exit status: 11 - Probably need a test for these vtables. - No change in the number of lua subtest failures with this patch. -- Will "Coke" Coleda