On Mon, Oct 01, 2001 at 03:37:34PM +0100, Simon Cozens wrote:
> On Sun, Sep 16, 2001 at 01:44:12PM -0400, Michael Fischer wrote:
> > Small hack to keep process_opfunc.pl from generating
> > extra return() statements. 
> 
> Thanks, applied.

That patch is broken or incomplete.

It breaks manual ops like eq_i_ic since the generated code can return without 
returning a value.

/* EQ Ix, Iy, EQ_BRANCH */
opcode_t *eq_i_ic(opcode_t cur_opcode[], struct Parrot_Interp *interpreter) {
  IV return_offset = 4;
  if (INT_REG(cur_opcode[1]) == INT_REG(cur_opcode[2])) {
    return cur_opcode + cur_opcode[3];
  }
############ missing return cur_opcode + return_offset;
}

Since there is no return value.

-- 
Jason

Reply via email to