On Mon, Mar 10, 2008 at 1:44 PM, Will Coleda <[EMAIL PROTECTED]> wrote: > On Mon, Mar 10, 2008 at 9:25 AM, Will Coleda <[EMAIL PROTECTED]> wrote: > > This was mentioned on a ticket, but to add it to this thread: tcl > > seems to work as well in this branch as it does in trunk now, > > chromatic++. > > > > -- > > Will "Coke" Coleda > > > > Closer inspection shows that partcl is not failing in quite the same > way in trunk vs. branch; some things that are failing in trunk work > here, and vice versa. I'm trying to track down the source of the > error, but I wouldn't call it a showstopper.
The conversion of tcllist.pmc to PDD17 isn't complete: there are currently several invocations of String's replace method which in trunk is the old C-style METHOD but in branch, is the new PDD17 style METHOD. I tried to replace these, for example: - Parrot_String_nci_replace(INTERP, P0, - string_from_literal(INTERP, "\\"), string_from_literal(INTERP, "\\\\")); + STRING* orig,repl; + orig = string_from_literal(INTERP, "\t"); + repl = string_from_literal(INTERP, "\\t"); + PCCINVOKE(INTERP, P0, "replace", STRING *orig, STRING *repl) ... This generates C-code, ala: #line 157 "./tcllist.pmc" Parrot_PCCINVOKE(interp, P0, CONST_STRING(interp, "replace"), "SS->", orig, repl); #line 113 "./tcllist.pmc" Which then dies during compilation with: ./tcllist.pmc:157: warning: implicit declaration of function 'CONST_STRING' ./tcllist.pmc:157: warning: nested extern declaration of 'CONST_STRING' ./tcllist.pmc:157: warning: passing argument 3 of 'Parrot_PCCINVOKE' makes pointer from integer without a cast Regards. -- Will "Coke" Coleda