On Friday 07 March 2008 02:22:58 François Perrad wrote: > in r26261 with MinGW32, Lua PMCs seem OK (thank to chromatic).
Several tests fail for me, but it looks like a problem with caller() in Lua, so it's probably beyond my expertise. It looks simpler to fix (if you know how the Lua compiler works, hint hint.) > but WMLScript PMCs don't compile : > many error like > .\wmlsinteger.pmc: In function `Parrot_WmlsInteger_subtract_WmlsString': > .\wmlsinteger.pmc:251: error: void value not ignored as it ought to be > > Here, a fragment of wmlsinteger.c : > PMC* > Parrot_WmlsInteger_subtract_WmlsString(PARROT_INTERP, PMC *pmc, PMC > *value, PMC *dest) > { > #line 250 ".\\wmlsinteger.pmc" > > PMC * trans = Parrot_WmlsString_nci_parseInt(interp, value); > if (trans->vtable->base_type == dynpmc_WmlsInteger) { > INTVAL result = VTABLE_get_integer(interp, pmc) > - VTABLE_get_integer(interp, trans); > dest = pmc_new(interp, dynpmc_WmlsInteger); > VTABLE_set_integer_native(interp, dest, result); > return dest; > } > return pmc_new(interp, dynpmc_WmlsInvalid); > #line 245 ".\\wmlsinteger.c" > } > > Now, back to wmlsinteger.pmc : > PMC* subtract(PMC* value, PMC* dest) { > ... > MMD_WmlsString: { > PMC * trans = WmlsString.value.parseInt(); > ... > > So, WmlsString.value.parseInt() seems not correctly managed. Right. I can't get that syntax to work anymore. I can convert it. > Nota: WMLScript is a bytecode translator, so the test suite needs a > WMLScript compiler, you could install it with the command : > cpan WAP::wmls I'll take care of it then! -- c