Patrick R. Michaud wrote: > > The infix:<**=> code broke as part of the mmd branch merge, because > the meaning of Parrot's 'pow' opcode has changed. The infix:<**=> > function used the Parrot opcode (src/builtins/assign.pir:80) > > a = a ** b # pow a, a, b > > Before the MMD merge, this opcode meant "raise a to the power > of b and store the result back in a". However, after the mmd > branch merge this opcode now means "create a new PMC containing > the value of a raised to the b power and set register a to point > to that new PMC, leaving the value of its original PMC alone". > So, the pow opcode is no longer able to act as an inplace modifier.
The other math opcodes have two argument versions that call the 'i_' inplace vtable function. I can add these for 'pow' if needed. Allison _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
