{
  void **src_ptr = (void**)(_SOURCE_PTR);
typedef struct _sigjmp_buf { int _sjb[11  + 1]; } sigjmp_buf[1];
typedef struct _jmp_buf { int _jb[11  + 1]; } jmp_buf[1];
int	setjmp  (jmp_buf)  ;
void	longjmp  (jmp_buf, int)   __attribute__((__noreturn__)) ;
int	sigsetjmp  (sigjmp_buf, int)  ;
void	siglongjmp  (sigjmp_buf, int)   __attribute__((__noreturn__)) ;
int	_setjmp  (jmp_buf)  ;
void	_longjmp  (jmp_buf, int)   __attribute__((__noreturn__)) ;
void	longjmperror  (void)  ;
  _SAVE_RVARS
  _push_exception_context (&_local_context);
  if (setjmp(*(jmp_buf*)(&_local_context.jmpbuf)) > 0) {
    extern void* _exception_source;
    _RESTORE_RVARS
    *src_ptr = (void*)_exception_source;
  } else {
    *src_ptr = NULL;
  }
}
