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.762 2009/06/17 15:39:05 grubba Exp $ + || $Id: program.c,v 1.763 2009/06/21 17:16:06 grubba Exp $   */      #include "global.h"   #include "program.h"   #include "object.h"   #include "dynamic_buffer.h"   #include "pike_types.h"   #include "stralloc.h"   #include "las.h"   #include "lex.h"
pike.git/src/program.c:2128:   #endif       /* Fixup the runtime type for functions.    * (T_MIXED is used as the tentative type marker in pass 1).    */    for (i=0; i < p->num_identifiers; i++) {    if (IDENTIFIER_IS_FUNCTION(p->identifiers[i].identifier_flags) &&    (p->identifiers[i].run_time_type == T_MIXED)) {    /* Get rid of the remaining tentative type marker. */    /* FIXME: Should probably never be reachable. -  * Consider a fatal? +  * Consider this a fatal?    */    p->identifiers[i].run_time_type = T_FUNCTION;    }    }       /* Fixup identifier overrides. */    for (i = 0; i < p->num_identifier_references; i++) {    struct reference *ref = p->identifier_references + i;    if (ref->id_flags & ID_HIDDEN) continue;    if (ref->inherit_offset != 0) continue;
pike.git/src/program.c:2178:    struct reference *funpb;    struct identifier *funb;       funpb=p->identifier_references+t;    if (funpb->id_flags & ID_HIDDEN) continue;    funb=ID_FROM_PTR(p,funpb);    /* if(funb->func.offset == -1) continue; * prototype */       if(fun->name==funb->name)    { +  if (!(funpb->id_flags & ID_PROTECTED)) { +  /* Only regard this symbol as better if it +  * will end up in the index further below. +  */    found_better=t; -  +  }       /* FIXME: Is this stuff needed?    * It looks like it already is done by define_function().    *    * Yes -- It's needed in case of mixin.    */    if(funa_is_prototype && (funb->func.offset != -1) &&    !(funp->id_flags & ID_INLINE))    {    if ((c->lex.pragmas & ID_STRICT_TYPES) &&