pike.git / src / pike_error.h

version» Context lines:

pike.git/src/pike_error.h:188:    Pike_fatal(msg_unset_onerr_nosync_1, \    Pike_interpreter.recoveries->onerror, &(X), \    Pike_interpreter.recoveries->onerror->file); \    } else { \    Pike_fatal("%s", msg_unset_onerr_nosync_2); \    } \    } \    Pike_interpreter.recoveries->onerror=(X).previous; \    } while(0)   #else /* !PIKE_DEBUG */ - #define SET_ONERROR(X,Y,Z) \ + #define LOW_SET_ONERROR(X,Y,Z) \    do{ \ -  X.func=(error_call)(Y); \ -  X.arg=(void *)(Z); \ -  X.frame_pointer = Pike_interpreter.frame_pointer; \ +  (X)->func=(error_call)(Y); \ +  (X)->arg=(void *)(Z); \ +  (X)->frame_pointer = Pike_interpreter.frame_pointer; \    if(!Pike_interpreter.recoveries) { \ -  X.previous = NULL; \ +  (X)->previous = NULL; \    break; \    } \ -  X.previous=Pike_interpreter.recoveries->onerror; \ -  Pike_interpreter.recoveries->onerror=&X; \ +  (X)->previous=Pike_interpreter.recoveries->onerror; \ +  Pike_interpreter.recoveries->onerror=(X); \    }while(0)    -  + #define SET_ONERROR(X,Y,Z) LOW_SET_ONERROR(&X, Y, Z) +    #define UNSET_ONERROR(X) Pike_interpreter.recoveries && (Pike_interpreter.recoveries->onerror=X.previous)      #endif /* PIKE_DEBUG */      #define CALL_AND_UNSET_ONERROR(X) do { \    UNSET_ONERROR(X); \    X.func(X.arg); \    }while(0)      #define PIKE_ERROR(NAME, TEXT, SP, ARGS) new_error(NAME, TEXT, SP, ARGS)