pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/   /**/   #include "global.h" - RCSID("$Id: interpret.c,v 1.139 2000/04/08 02:01:08 hubbe Exp $"); + RCSID("$Id: interpret.c,v 1.140 2000/04/12 18:40:12 hubbe Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"   #include "svalue.h"   #include "array.h"   #include "mapping.h"   #include "error.h"   #include "language.h"   #include "stralloc.h"   #include "constants.h"
pike.git/src/interpret.c:94:   #endif    return sp - *--mark_sp;   }      struct pike_frame *fp; /* pike_frame pointer */      #ifdef PIKE_DEBUG   static void gc_check_stack_callback(struct callback *foo, void *bar, void *gazonk)   {    struct pike_frame *f; -  debug_gc_xmark_svalues(evaluator_stack,sp-evaluator_stack-1,"interpreter stack"); +  debug_gc_xmark_svalues(evaluator_stack,sp-evaluator_stack-1," on current interpreter stack");       for(f=fp;f;f=f->next)    {    if(f->context.parent) -  gc_external_mark(f->context.parent); -  gc_external_mark(f->current_object); -  gc_external_mark(f->context.prog); +  gc_external_mark2(f->context.parent,0," in fp->context.parent on current stack"); +  gc_external_mark2(f->current_object,0," in fp->current_object on current stack"); +  gc_external_mark2(f->context.prog,0," in fp->context.prog on current stack");    }      }   #endif      void init_interpreter(void)   {   #ifdef USE_MMAP_FOR_STACK    static int fd = -1;