pike.git / src / interpret.h

version» Context lines:

pike.git/src/interpret.h: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.h,v 1.109 2002/05/31 22:41:24 nilsson Exp $ +  * $Id: interpret.h,v 1.110 2002/08/15 14:49:21 marcus Exp $    */   #ifndef INTERPRET_H   #define INTERPRET_H      #include "global.h"   #include "program.h"   #include "pike_error.h"   #include "bignum.h"      struct Pike_interpreter {
pike.git/src/interpret.h:102: Inside #if defined(HAVE_COMPUTED_GOTO)
  #ifdef HAVE_COMPUTED_GOTO   extern PIKE_OPCODE_T *fcode_to_opcode;   extern struct op_2_f {    PIKE_OPCODE_T opcode;    INT32 fcode;   } *opcode_to_fcode;   #endif /* HAVE_COMPUTED_GOTO */      #ifdef PIKE_DEBUG   PMOD_EXPORT extern const char msg_stack_error[]; - #define debug_check_stack() do{if(Pike_sp<Pike_interpreter.evaluator_stack)fatal(msg_stack_error);}while(0) - #define check__positive(X,Y) if((X)<0) fatal Y + #define debug_check_stack() do{if(Pike_sp<Pike_interpreter.evaluator_stack)Pike_fatal(msg_stack_error);}while(0) + #define check__positive(X,Y) if((X)<0) Pike_fatal Y   #include "pike_error.h"   #else   #define check__positive(X,Y)   #define debug_check_stack()   #endif      #define low_stack_check(X) \    (Pike_sp - Pike_interpreter.evaluator_stack + \    Pike_interpreter.svalue_stack_margin + (X) >= Pike_stack_size)   
pike.git/src/interpret.h:148:    x_*=STACK_DIRECTION; \    if(x_>0) \    ((void (*)(const char*, ...))low_error)(Pike_check_c_stack_errmsg); \    }while(0)      #define fatal_check_c_stack(X) do { \    ptrdiff_t x_= \    ((char *)&x_) + STACK_DIRECTION * (X) - Pike_interpreter.stack_top ; \    x_*=STACK_DIRECTION; \    if(x_>0) { \ -  ((void (*)(const char*, ...))fatal)(Pike_check_c_stack_errmsg); \ +  ((void (*)(const char*, ...))Pike_fatal)(Pike_check_c_stack_errmsg); \    } \    }while(0)         #define pop_stack() do{ free_svalue(--Pike_sp); debug_check_stack(); }while(0)   #define pop_2_elems() do { pop_stack(); pop_stack(); }while(0)      #ifdef __ECL   #define MAYBE_CAST_TO_LONG(X) (X)   #else /* !__ECL */
pike.git/src/interpret.h:244:      /* A scope is any frame which may have malloced locals */   #define free_pike_scope(F) do{ struct pike_frame *f_=(F); debug_malloc_touch(f_); if(!--f_->refs) really_free_pike_scope(f_); }while(0)      #define POP_PIKE_FRAME() do { \    struct pike_frame *tmp_=Pike_fp->next; \    if(!--Pike_fp->refs) \    { \    really_free_pike_frame(Pike_fp); \    }else{ \ -  DO_IF_DEBUG(if( Pike_fp->locals + Pike_fp->num_locals > Pike_sp || Pike_sp < Pike_fp->expendible) fatal("Stack failure in POP_PIKE_FRAME %p+%d=%p %p %p!\n",Pike_fp->locals,Pike_fp->num_locals,Pike_fp->locals+Pike_fp->num_locals,Pike_sp,Pike_fp->expendible)); \ +  DO_IF_DEBUG(if( Pike_fp->locals + Pike_fp->num_locals > Pike_sp || Pike_sp < Pike_fp->expendible) Pike_fatal("Stack failure in POP_PIKE_FRAME %p+%d=%p %p %p!\n",Pike_fp->locals,Pike_fp->num_locals,Pike_fp->locals+Pike_fp->num_locals,Pike_sp,Pike_fp->expendible)); \    debug_malloc_touch(Pike_fp); \    if(Pike_fp->num_locals) \    { \    struct svalue *s=(struct svalue *)xalloc(sizeof(struct svalue)* \    Pike_fp->num_locals); \    assign_svalues_no_free(s,Pike_fp->locals,Pike_fp->num_locals,BIT_MIXED); \    Pike_fp->locals=s; \    Pike_fp->flags|=PIKE_FRAME_MALLOCED_LOCALS; \    }else{ \    Pike_fp->locals=0; \