pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:1:   /*   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: interpret.c,v 1.325 2003/08/08 13:21:49 mast Exp $ + || $Id: interpret.c,v 1.326 2003/08/08 15:47:52 grubba Exp $   */      #include "global.h" - RCSID("$Id: interpret.c,v 1.325 2003/08/08 13:21:49 mast Exp $"); + RCSID("$Id: interpret.c,v 1.326 2003/08/08 15:47:52 grubba Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"   #include "svalue.h"   #include "array.h"   #include "mapping.h"   #include "pike_error.h"   #include "language.h"   #include "stralloc.h"   #include "constants.h"
pike.git/src/interpret.c:1938:    }   }      /* NOTE: This function may only be called from the compiler! */   PMOD_EXPORT int apply_low_safe_and_stupid(struct object *o, INT32 offset)   {    JMP_BUF tmp;    struct pike_frame *new_frame=alloc_pike_frame();    int ret;    int use_dummy_reference = !o->prog->num_identifier_references; +  int p_flags = o->prog->flags;       /* This is needed for opcodes that use INHERIT_FROM_*    * (eg F_EXTERN) to work.    */    if (use_dummy_reference) {    struct reference dummy_ref = {    0, 0, ID_HIDDEN,    }; -  +  /* check_program() doesn't like our identifier... */ +  o->prog->flags |= PROGRAM_AVOID_CHECK;    add_to_identifier_references(dummy_ref);    }       /* FIXME: Is this up-to-date with mega_apply? */    new_frame->next = Pike_fp;    new_frame->current_object = o;    new_frame->context=o->prog->inherits[0];    new_frame->locals = Pike_interpreter.evaluator_stack;    new_frame->expendible=new_frame->locals;    new_frame->args = 0;
pike.git/src/interpret.c:1987: Inside #if defined(PIKE_DEBUG)
  #ifdef PIKE_DEBUG    if(Pike_sp<Pike_interpreter.evaluator_stack)    Pike_fatal("Stack error (simple).\n");   #endif    ret=0;    }    UNSETJMP(tmp);       if (use_dummy_reference) {    Pike_compiler->new_program->num_identifier_references--; +  o->prog->flags = p_flags;    }       POP_PIKE_FRAME();       return ret;   }      PMOD_EXPORT void safe_apply_low2(struct object *o,int fun,int args, int handle_errors)   {    JMP_BUF recovery;