pike.git / src / program.c

version» Context lines:

pike.git/src/program.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: program.c,v 1.508 2003/06/09 16:36:39 mast Exp $ + || $Id: program.c,v 1.509 2003/06/30 16:47:14 mast Exp $   */      #include "global.h" - RCSID("$Id: program.c,v 1.508 2003/06/09 16:36:39 mast Exp $"); + RCSID("$Id: program.c,v 1.509 2003/06/30 16:47:14 mast Exp $");   #include "program.h"   #include "object.h"   #include "dynamic_buffer.h"   #include "pike_types.h"   #include "stralloc.h"   #include "las.h"   #include "language.h"   #include "lex.h"   #include "pike_macros.h"   #include "fsort.h"
pike.git/src/program.c:1499:    size+=p->PIKE_CONCAT(num_,NAME)*sizeof(p->NAME[0]);   #include "program_areas.h"       p->total_size=size + sizeof(struct program);       p->flags |= PROGRAM_OPTIMIZED;    make_program_executable(p);   }      /* internal function to make the index-table */ - static ptrdiff_t program_identifier_index_compare(int a, int b, + static int program_identifier_index_compare(int a, int b,    const struct program *p)   { -  ptrdiff_t val_a = ((char *)(ID_FROM_INT(p, a)->name))-(char *)0; -  ptrdiff_t val_b = ((char *)(ID_FROM_INT(p, b)->name))-(char *)0; -  -  return val_a - val_b; +  size_t val_a = PTR_TO_INT (ID_FROM_INT(p, a)->name); +  size_t val_b = PTR_TO_INT (ID_FROM_INT(p, b)->name); +  return val_a < val_b ? -1 : (val_a == val_b ? 0 : 1);   }      #define CMP(X,Y) program_identifier_index_compare(*(X), *(Y), prog)   #define EXTRA_ARGS , struct program *prog   #define XARGS , prog   #define ID fsort_program_identifier_index   #define TYPE unsigned short   #include "fsort_template.h"   #undef TYPE   #undef ID   #undef XARGS   #undef EXTRA_ARGS   #undef CMP      #ifdef PIKE_DEBUG   struct pike_string *find_program_name(struct program *p, INT32 *line)   { -  ptrdiff_t pos; +     INT32 l;    if(!line) line=&l;      #ifdef DEBUG_MALLOC    {    char *tmp=dmalloc_find_name(p);    if (tmp) {    char *p = STRCHR (tmp, ':');    if (p) {    char *pp;
pike.git/src/program.c:4723:    */   int low_find_shared_string_identifier(struct pike_string *name,    struct program *prog)   {    int max,min,tst;    struct identifier *fun;       if(prog->flags & PROGRAM_FIXED)    {    unsigned short *funindex = prog->identifier_index; -  ptrdiff_t val_n = ((char *)name) - (char *)0; +  size_t val_n = PTR_TO_INT (name);      #ifdef PIKE_DEBUG    if(!funindex)    Pike_fatal("No funindex in fixed program\n");   #endif       max = prog->num_identifier_index;    min = 0;    while(max != min)    { -  ptrdiff_t val_t; +  size_t val_t;       tst=(max + min) >> 1;    fun = ID_FROM_INT(prog, funindex[tst]);    if(is_same_string(fun->name,name)) return funindex[tst]; -  val_t = ((char *)fun->name) - (char *)0; -  if ((val_n - val_t) < 0) { +  val_t = PTR_TO_INT (fun->name); +  if (val_n < val_t) {    max = tst;    } else {    min = tst+1;    }    }    }else{    return really_low_find_shared_string_identifier(name,prog,0);    }    return -1;   }
pike.git/src/program.c:6040:    debug_malloc_touch(c->placeholder);    zap_placeholder(c);    } else {   #ifdef PIKE_DEBUG    if (c->placeholder->prog != c->p)    Pike_fatal("Placeholder object got wrong program after first pass.\n");   #endif    debug_malloc_touch(c->placeholder);    c->placeholder->storage=c->p->storage_needed ?    (char *)xalloc(c->p->storage_needed) : -  (char *)0; +  (char *)NULL;    call_c_initializers(c->placeholder);    }    }       verify_supporters();    return ret;   }      void run_pass2(struct compilation *c)   {