pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:2290:    if( (p = o->prog) )    {    struct svalue *save_sp = Pike_sp - args;    struct reference *ref = p->identifier_references + fun;    struct inherit *context = p->inherits + ref->inherit_offset;    struct identifier *function = context->prog->identifiers + ref->identifier_offset;    struct svalue *constant = NULL;    struct pike_frame *new_frame = NULL;       int type = (function->identifier_flags & (IDENTIFIER_TYPE_MASK|IDENTIFIER_ALIAS)); -  if( o->prog != pike_trampoline_program && function->func.offset != -1 ) +  if( o->prog != pike_trampoline_program && +  !( + #ifdef USE_VALGRIND +  type & IDENTIFIER_PIKE_FUNCTION && + #endif +  function->func.offset == -1 ))    {    switch( type )    {    case IDENTIFIER_CONSTANT:    constant = &context->prog->constants[function->func.const_info.offset].sval;    if( TYPEOF(*constant) != PIKE_T_PROGRAM )    break;    /* FALLTHRU */    case IDENTIFIER_C_FUNCTION:    case IDENTIFIER_PIKE_FUNCTION: