pike.git / src / interpret_functions.h

version» Context lines:

pike.git/src/interpret_functions.h:350:       OPCODE1(F_GLOBAL, "global", I_UPDATE_SP, {    low_index_current_object_no_free(Pike_sp, arg1);    Pike_sp++;    print_return_value();    });   });      OPCODE1(F_PRIVATE_GLOBAL, "global <private>", I_UPDATE_SP, {    struct svalue *sp; -  sp = (struct svalue *)(Pike_fp->current_object->storage + Pike_fp->context->storage_offset + arg1); +  struct object *co = Pike_fp->current_object; +  if(!co->prog) /* note: generate an error. */ +  object_low_set_index(co,0,0); +  sp = (struct svalue *)(co->storage + Pike_fp->context->storage_offset + arg1);    push_svalue( sp );    print_return_value();   });      OPCODE2_TAIL(F_MARK_AND_EXTERNAL, "mark & external", I_UPDATE_SP|I_UPDATE_M_SP, {    *(Pike_mark_sp++)=Pike_sp;       OPCODE2(F_EXTERNAL,"external", I_UPDATE_SP, {    LOCAL_VAR(struct external_variable_context loc);   
pike.git/src/interpret_functions.h:1077:      OPCODE1(F_ASSIGN_GLOBAL_AND_POP, "assign global and pop", I_UPDATE_SP, {    object_low_set_index(Pike_fp->current_object,    arg1 + Pike_fp->context->identifier_level,    Pike_sp-1);    pop_stack();   });      OPCODE1(F_ASSIGN_PRIVATE_GLOBAL_AND_POP, "assign private global and pop", I_UPDATE_SP, {    struct svalue *tmp; -  tmp = (struct svalue *)(Pike_fp->current_object->storage + Pike_fp->context->storage_offset + arg1); +  struct object *co = Pike_fp->current_object; +  if(!co->prog) /* note: generate an error. */ +  object_low_set_index(co,0,0); +  tmp = (struct svalue *)(co->storage + Pike_fp->context->storage_offset + arg1);    free_svalue(tmp);    *tmp = *--Pike_sp;   });      OPCODE1(F_ASSIGN_PRIVATE_GLOBAL, "assign private global", I_UPDATE_SP, {    struct svalue *tmp; -  +  struct object *co = Pike_fp->current_object; +  if(!co->prog) /* note: generate an error. */ +  object_low_set_index(co,0,0);    tmp = (struct svalue *)(Pike_fp->current_object->storage + Pike_fp->context->storage_offset + arg1);    assign_svalue( tmp, Pike_sp-1 );   });      OPCODE2(F_ASSIGN_GLOBAL_NUMBER_AND_POP, "assign global number and pop", 0, {    struct svalue tmp;    SET_SVAL(tmp,PIKE_T_INT,0,integer,arg2);    object_low_set_index(Pike_fp->current_object,    arg1 + Pike_fp->context->identifier_level,    &tmp);