pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:2490:    Pike_fp = new_frame;       saved_jmpbuf = Pike_interpreter.catching_eval_jmpbuf;    Pike_interpreter.catching_eval_jmpbuf = NULL;       if(SETJMP(tmp))    {    ret=1;    }else{    int tmp; -  new_frame->mark_sp_base=new_frame->save_mark_sp=Pike_mark_sp; +  new_frame->save_mark_sp=Pike_mark_sp;    tmp=eval_instruction(prog->program + offset);    Pike_mark_sp=new_frame->save_mark_sp;      #ifdef PIKE_DEBUG    if (tmp != -1)    Pike_fatal ("Unexpected return value from eval_instruction: %d\n", tmp);    if(Pike_sp<Pike_interpreter.evaluator_stack)    Pike_fatal("Stack error (simple).\n");   #endif    ret=0;
pike.git/src/interpret.c:3370:    break;    case IDENTIFIER_PIKE_FUNCTION: {    PIKE_OPCODE_T * pc;       frame->type = FRAME_PIKE_FUNCTION;    if(function->func.offset == -1) {    generic_error(NULL, Pike_sp, 0/*args*/,    "Calling undefined function.\n");    }    pc = context->prog->program + function->func.offset; -  frame->save_mark_sp=frame->mark_sp_base=Pike_mark_sp; +  frame->save_mark_sp=Pike_mark_sp;    frame->ptr = pc   #ifdef ENTRY_PROLOGUE_SIZE    + ENTRY_PROLOGUE_SIZE   #endif /* ENTRY_PROLOGUE_SIZE */    ;    break;    }    case IDENTIFIER_CONSTANT: {    struct svalue *s=&(context->prog->constants[function->func.const_info.offset].sval);    frame_setup_from_svalue(frame, s);
pike.git/src/interpret.c:3522:       switch (frame->type) {    case FRAME_BUILTIN:    break;    case FRAME_EFUN:    case FRAME_C_FUNCTION:    frame->num_locals = args;    break;    case FRAME_PIKE_FUNCTION:    frame->save_mark_sp = Pike_mark_sp; -  frame->mark_sp_base = Pike_mark_sp; +     frame->pc = frame->ptr;    break;    case FRAME_CLONE:    case FRAME_PARENT_CLONE:    break;    case FRAME_ARRAY:    break;    case FRAME_CAST:    if (args != 1) Pike_error("wrong number of arguments.\n");    break;