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

Reply via email to