Gregor,

You've got a disaster waiting to happen when sizeof(pointer) != 
sizeof(opcode).  (64 bit/32 bit mix would be valid.)

interpreter.c, line 204:
----------------------------
static void **
prederef(void ** pc_prederef, struct Parrot_Interp * interpreter)
{
  size_t      offset = pc_prederef - interpreter->prederef_code; 
  opcode_t *  pc     = ((opcode_t *)interpreter->code->byte_code) + offset;

I'm not sure to what extent this problem reaches, or how you want to 
approach this, so I've no quick patch, sorry.

-- 
Bryan C. Warnock
[EMAIL PROTECTED]

Reply via email to