20 #ifndef COMMON_EXCEPTIONS_H
21 #define COMMON_EXCEPTIONS_H
39 #define RETURN_MASK(reason) (1 << (int)(-reason))
130 extern void *exception_try_scope_entry (
void);
131 extern void exception_try_scope_exit (
void *saved_state);
132 extern void exception_rethrow (
void);
165 exceptions_state_mc_init (); \
168 while (exceptions_state_mc_action_iter ()) \
169 while (exceptions_state_mc_action_iter_1 ())
171 #define CATCH(EXCEPTION, MASK) \
173 struct gdb_exception EXCEPTION; \
174 if (exceptions_state_mc_catch (&(EXCEPTION), MASK))
184 struct exception_try_scope
186 exception_try_scope ()
188 saved_state = exception_try_scope_entry ();
190 ~exception_try_scope ()
192 exception_try_scope_exit (saved_state);
205 exception_try_scope exception_try_scope_instance; \
209 #define CATCH(EXCEPTION, MASK) \
212 catch (struct gdb_exception ## _ ## MASK &EXCEPTION)
217 exception_rethrow (); \
228 struct gdb_exception_RETURN_MASK_ERROR :
public gdb_exception_RETURN_MASK_ALL
232 struct gdb_exception_RETURN_MASK_QUIT :
public gdb_exception_RETURN_MASK_ALL
261 extern void throw_vquit (
const char *fmt, va_list ap)
264 ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (2, 3);
266 ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (1, 2);
int exceptions_state_mc_catch(struct gdb_exception *, int)
struct type ** const(pascal_builtin_types[])
#define RETURN_MASK(reason)
void void void void throw_quit(const char *fmt,...) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(1
void void throw_vquit(const char *fmt, va_list ap) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(1
void throw_exception(struct gdb_exception exception) ATTRIBUTE_NORETURN
void prepare_to_throw_exception(void)
int exceptions_state_mc_action_iter(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)
SIGJMP_BUF * exceptions_state_mc_init(void)
static void ATTRIBUTE_PRINTF(6, 0)
enum return_reason reason