pike.git / src / program.c

version» Context lines:

pike.git/src/program.c:33:   #include "pikecode.h"   #include "pike_compiler.h"   #include "module_support.h"   #include "bitvector.h"   #include "sprintf.h"      #include <errno.h>   #include <fcntl.h>      static void exit_program_struct(struct program *); - static size_t add_xstorage(size_t size, -  size_t alignment, -  ptrdiff_t modulo_orig); +       /* mapping(int:string) */   static struct mapping *reverse_symbol_table = NULL;      static struct block_allocator program_allocator = BA_INIT_PAGES(sizeof(struct program), 4);      ATTRIBUTE((malloc))   struct program * alloc_program(void) {    struct program *p = ba_alloc(&program_allocator);    dmalloc_register(p, sizeof(struct program), DMALLOC_LOCATION());
pike.git/src/program.c:5190:    }else{    prog=Pike_compiler->new_program;    add_ref(prog);       Pike_compiler->new_program->flags |= PROGRAM_PASS_1_DONE;       if(finish)    {    if(Pike_compiler->new_program->flags & PROGRAM_USES_PARENT)    { +  if (!Pike_compiler->new_program->parent_info_storage) {    Pike_compiler->new_program->parent_info_storage =    add_xstorage(sizeof(struct parent_info),    ALIGNOF(struct parent_info),    0); -  +  }    }else{    /* Cause errors if used hopefully */    Pike_compiler->new_program->parent_info_storage=-1;    }       fixate_program();    if(Pike_compiler->num_parse_error)    {    free_program(prog);    prog=0;
pike.git/src/program.c:5357:       Pike_compiler->new_program->storage_needed = offset + size;       return (size_t) offset;   }      /*    * Internal function.    * Adds object storage that will *not* be inherited.    */ - static size_t add_xstorage(size_t size, + size_t add_xstorage(size_t size,    size_t alignment,    ptrdiff_t modulo_orig)   {    ptrdiff_t offset, modulo, available;    int e;       if(!size) return Pike_compiler->new_program->xstorage;       modulo=( modulo_orig /* +OFFSETOF(object,storage) */ ) % alignment;