20 #ifndef COMMON_EXCEPTIONS_H 21 #define COMMON_EXCEPTIONS_H 38 #define RETURN_MASK(reason) (1 << (int)(-reason)) 121 #define GDB_XCPT_SJMP 1 124 #define GDB_XCPT_TRY 2 130 #define GDB_XCPT_RAW_TRY 3 132 #define GDB_XCPT GDB_XCPT_TRY 146 #if GDB_XCPT != GDB_XCPT_SJMP 185 exceptions_state_mc_init (); \ 188 while (exceptions_state_mc_action_iter ()) \ 189 while (exceptions_state_mc_action_iter_1 ()) 191 #define CATCH_SJLJ(EXCEPTION, MASK) \ 193 struct gdb_exception EXCEPTION; \ 194 if (exceptions_state_mc_catch (&(EXCEPTION), MASK)) 196 #define END_CATCH_SJLJ \ 199 #if GDB_XCPT == GDB_XCPT_SJMP 205 #define CATCH CATCH_SJLJ 206 #define END_CATCH END_CATCH_SJLJ 210 #if GDB_XCPT == GDB_XCPT_TRY || GDB_XCPT == GDB_XCPT_RAW_TRY 229 #if GDB_XCPT == GDB_XCPT_TRY 250 exception_try_scope exception_try_scope_instance; \ 254 #define CATCH(EXCEPTION, MASK) \ 257 catch (struct gdb_exception ## _ ## MASK &EXCEPTION) 262 exception_rethrow (); \ 269 #define CATCH(EXCEPTION, MASK) \ 270 catch (struct gdb_exception ## _ ## MASK &EXCEPTION) 301 public std::bad_alloc
331 extern void throw_vquit (
const char *fmt, va_list ap)
int exceptions_state_mc_catch(struct gdb_exception *, int)
void void void void const struct gdb_exception exception_none
#define RETURN_MASK(reason)
void exception_try_scope_exit(void *saved_state)
void void void void throw_quit(const char *fmt,...) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(1
void throw_exception_sjlj(struct gdb_exception exception) ATTRIBUTE_NORETURN
void void throw_vquit(const char *fmt, va_list ap) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(1
gdb_quit_bad_alloc(gdb_exception ex)
void throw_exception(struct gdb_exception exception) ATTRIBUTE_NORETURN
int exceptions_state_mc_action_iter(void)
jmp_buf * exceptions_state_mc_init(void)
void exception_rethrow(void)
void throw_verror(enum errors, const char *fmt, va_list ap) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(2
void void void throw_error(enum errors error, const char *fmt,...) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(2
int exceptions_state_mc_action_iter_1(void)
void * exception_try_scope_entry(void)
void error(const char *fmt,...)
enum return_reason reason