pike.git / src / error.c

version» Context lines:

pike.git/src/error.c:196: Inside #if defined(PIKE_DEBUG)
  #ifdef PIKE_DEBUG    if(Pike_sp - Pike_interpreter.evaluator_stack < Pike_interpreter.recoveries->stack_pointer)    Pike_fatal("Stack error in error.\n");   #endif       pop_n_elems(Pike_sp - Pike_interpreter.evaluator_stack - Pike_interpreter.recoveries->stack_pointer);    Pike_mark_sp = Pike_interpreter.mark_stack + Pike_interpreter.recoveries->mark_sp;      #if defined(DEBUG_MALLOC) && defined(PIKE_DEBUG)    /* This will tell us where the value was caught (I hope) */ -  if(TYPEOF(throw_value) <= MAX_REF_TYPE) +  if(REFCOUNTED_TYPE(TYPEOF(throw_value)))    {    debug_malloc_update_location(throw_value.u.refs,    Pike_interpreter.recoveries->file);    debug_malloc_touch(throw_value.u.refs);    }   #endif      #ifdef TRACE_UNFINISHED_TYPE_FIELDS    accept_unfinished_type_fields--;   #endif
pike.git/src/error.c:363:    push_int(0);    push_int(0);    }       if (name)    push_text(name);    else    push_int(0);       for (i=-args; i; i++) { -  if (TYPEOF(oldsp[i]) <= PIKE_T_FLOAT) { +  if (TYPEOF(oldsp[i]) <= MAX_TYPE) {    push_svalue(oldsp + i);    } else {    char buffer[50];    sprintf(buffer, "<Svalue:0x%04x:0x%04x:%p>",    TYPEOF(oldsp[i]), SUBTYPEOF(oldsp[i]), oldsp[i].u.ptr);    push_text(buffer);    }    }       f_aggregate(args + 3);
pike.git/src/error.c:666:    pop_n_elems(args);    apply_current (generic_err_backtrace_fun, 0);    break;    default:    index_error("error->`[]", Pike_sp-args, args, NULL, Pike_sp-args,    "Index %"PRINTPIKEINT"d is out of range 0..1.\n", ind);    break;    }   }    + static void f_error__sizeof(INT32 args) + { +  pop_n_elems(args); +  push_int(2); + } +  + static void f_error__indices(INT32 args) + { +  pop_n_elems(args); +  push_int(0); +  push_int(1); +  f_aggregate(2); + } +  + static void f_error__values(INT32 args) + { +  pop_n_elems(args); +  apply_current(generic_err_message_fun, 0); +  apply_current(generic_err_backtrace_fun, 0); +  f_aggregate(2); + } +    /*! @decl string describe()    *!    *! Return a readable error report that includes the backtrace.    */   static void f_error_describe(INT32 args)   {    pop_n_elems(args);    ref_push_object(Pike_fp->current_object);    APPLY_MASTER("describe_backtrace",1);   }