pike.git / src / error.c

version» Context lines:

pike.git/src/error.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: error.c,v 1.106 2003/04/07 17:28:55 nilsson Exp $ + || $Id: error.c,v 1.107 2003/04/28 00:34:12 mast Exp $   */      #define NO_PIKE_SHORTHAND   #include "global.h"   #include "svalue.h"   #include "pike_macros.h"   #include "pike_error.h"   #include "interpret.h"   #include "stralloc.h"   #include "builtin_functions.h"   #include "array.h"   #include "object.h"   #include "main.h"   #include "builtin_functions.h"   #include "backend.h"   #include "operators.h"   #include "module_support.h"   #include "threads.h"   #include "gc.h"    - RCSID("$Id: error.c,v 1.106 2003/04/07 17:28:55 nilsson Exp $"); + RCSID("$Id: error.c,v 1.107 2003/04/28 00:34:12 mast Exp $");      #undef ATTRIBUTE   #define ATTRIBUTE(X)      PMOD_EXPORT const char msg_fatal_error[] =    "%s:%d: Fatal error:\n";   #ifdef PIKE_DEBUG   PMOD_EXPORT const char msg_unsetjmp_nosync_1[] =    "UNSETJMP out of sync! (last SETJMP at %s)!\n";   PMOD_EXPORT const char msg_unsetjmp_nosync_2[] =
pike.git/src/error.c:104:    r->previous=Pike_interpreter.recoveries;    r->onerror=0;    r->severity=THROW_ERROR;    Pike_interpreter.recoveries=r;    check_recovery_context();    return r;   }      PMOD_EXPORT DECLSPEC(noreturn) void pike_throw(void) ATTRIBUTE((noreturn))   { + #ifdef TRACE_UNFINISHED_TYPE_FIELDS +  accept_unfinished_type_fields++; + #endif +     while(Pike_interpreter.recoveries && throw_severity > Pike_interpreter.recoveries->severity)    {    while(Pike_interpreter.recoveries->onerror)    {    (*Pike_interpreter.recoveries->onerror->func)(Pike_interpreter.recoveries->onerror->arg);    Pike_interpreter.recoveries->onerror=Pike_interpreter.recoveries->onerror->previous;    }       Pike_interpreter.recoveries=Pike_interpreter.recoveries->previous;    }
pike.git/src/error.c:151: Inside #if defined(DEBUG_MALLOC) && defined(PIKE_DEBUG)
  #if defined(DEBUG_MALLOC) && defined(PIKE_DEBUG)    /* This will tell us where the value was caught (I hope) */    if(throw_value.type <= MAX_REF_TYPE)    {    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 +     longjmp(Pike_interpreter.recoveries->recovery,1);   }      PMOD_EXPORT void push_error(const char *description)   {    push_text(description);    f_backtrace(0);    f_aggregate(2);   }