pike.git / src / gc.c

version» Context lines:

pike.git/src/gc.c:1223: Inside #if defined(PIKE_DEBUG)
   if (IDENTIFIER_IS_PIKE_FUNCTION(id->identifier_flags) &&    id->func.offset >= 0 &&    (file = get_line(p->program + id->func.offset, p, &line))) {    fprintf(stderr, "%*s**Function %s at %s:%ld\n",    indent, "", id->name->str, file->str, (long) line);    free_string(file);    }    else    fprintf(stderr, "%*s**Function %s at unknown location.\n",    indent, "", id->name->str); -  +  } else { +  fprintf(stderr, "%*s**Function #%d\n", indent, "", t->func); +  } +  fprintf(stderr, "%*s**Context frame: %p (%d refs)\n", +  indent, "", t->frame, t->frame->refs); +  if (p) { +  id = ID_FROM_INT(p, t->frame->fun); +  if (IDENTIFIER_IS_PIKE_FUNCTION(id->identifier_flags) && +  id->func.offset >= 0 && +  (file = get_line(p->program + id->func.offset, p, &line))) { +  fprintf(stderr, "%*s**Lexical parent function %s at %s:%ld\n", +  indent, "", id->name->str, file->str, (long) line); +  free_string(file); +  } +  else +  fprintf(stderr, "%*s**Lexical parent function %s at unknown location.\n", +  indent, "", id->name->str); +  } else { +  fprintf(stderr, "%*s**Lexical parent function #%d\n", +  indent, "", t->frame->fun); +  }    if (depth && o->prog) {    fprintf (stderr, "%*s**Describing function's object:\n",    indent, "");    describe_something (o, T_OBJECT, indent + 2, depth - 1,    (flags & DESCRIBE_SHORT) & ~DESCRIBE_MEM,    0);    }    } -  } +        else if (((struct object *) a)->refs > 0 && p) {    size_t inh_idx, var_idx, var_count = 0;       if (p) {    fprintf (stderr, "%*s**Object variables:\n", indent, "");       for (inh_idx = 0; inh_idx < p->num_inherits; inh_idx++) {    struct inherit *inh = p->inherits + inh_idx;    struct program *p2 = inh->prog;