diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-16 15:18:52 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-16 15:18:52 +0900 |
| commit | 3e00684faaeadb83bad6512ece109e84f8dd7f95 (patch) | |
| tree | 3af7bdd5c3c0e56ca8087965afa0d1b597159e32 /include | |
| parent | c136d871b99644c9593bd73a51e026d3f9257e7f (diff) | |
| download | mruby-3e00684faaeadb83bad6512ece109e84f8dd7f95.tar.gz mruby-3e00684faaeadb83bad6512ece109e84f8dd7f95.zip | |
resolve conflict
Diffstat (limited to 'include')
| -rw-r--r-- | include/mruby.h | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/include/mruby.h b/include/mruby.h index 0ab2d8037..af1fc9894 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -171,6 +171,16 @@ typedef struct mrb_state { void *ud; /* auxiliary data */ } mrb_state; +#if __STDC_VERSION__ >= 201112L +# define mrb_noreturn _Noreturn +#elif defined __GNUC__ && !defined __STRICT_ANSI__ +# define mrb_noreturn __attribute__((noreturn)) +#elif defined _MSC_VER +# define mrb_noreturn __declspec(noreturn) +#else +# define mrb_noreturn +#endif + typedef mrb_value (*mrb_func_t)(mrb_state *mrb, mrb_value); struct RClass *mrb_define_class(mrb_state *, const char*, struct RClass*); struct RClass *mrb_define_module(mrb_state *, const char*); @@ -333,13 +343,13 @@ mrb_value mrb_obj_clone(mrb_state *mrb, mrb_value self); #endif mrb_value mrb_exc_new(mrb_state *mrb, struct RClass *c, const char *ptr, long len); -void mrb_exc_raise(mrb_state *mrb, mrb_value exc); +mrb_noreturn void mrb_exc_raise(mrb_state *mrb, mrb_value exc); -void mrb_raise(mrb_state *mrb, struct RClass *c, const char *msg); -void mrb_raisef(mrb_state *mrb, struct RClass *c, const char *fmt, ...); -void mrb_name_error(mrb_state *mrb, mrb_sym id, const char *fmt, ...); +mrb_noreturn void mrb_raise(mrb_state *mrb, struct RClass *c, const char *msg); +mrb_noreturn void mrb_raisef(mrb_state *mrb, struct RClass *c, const char *fmt, ...); +mrb_noreturn void mrb_name_error(mrb_state *mrb, mrb_sym id, const char *fmt, ...); void mrb_warn(mrb_state *mrb, const char *fmt, ...); -void mrb_bug(mrb_state *mrb, const char *fmt, ...); +mrb_noreturn void mrb_bug(mrb_state *mrb, const char *fmt, ...); void mrb_print_backtrace(mrb_state *mrb); void mrb_print_error(mrb_state *mrb); |
