diff options
| author | Damien George <damien@micropython.org> | 2021-04-22 12:13:58 +1000 |
|---|---|---|
| committer | Damien George <damien@micropython.org> | 2021-04-27 23:51:52 +1000 |
| commit | d4b706c4d01377d42855ff1544ced77536f69caf (patch) | |
| tree | cfdb78c011813396af745720c1a7754ac91487d7 /py/runtime.h | |
| parent | 30d9f77cc535306eeb9eed6f17e71355fd58995a (diff) | |
py: Add option to compile without any error messages at all.
This introduces a new option, MICROPY_ERROR_REPORTING_NONE, which
completely disables all error messages. To be used in cases where
MicroPython needs to fit in very limited systems.
Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'py/runtime.h')
| -rw-r--r-- | py/runtime.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/py/runtime.h b/py/runtime.h index 0bf988b90..0cbbb287a 100644 --- a/py/runtime.h +++ b/py/runtime.h @@ -159,12 +159,25 @@ mp_obj_t mp_import_name(qstr name, mp_obj_t fromlist, mp_obj_t level); mp_obj_t mp_import_from(mp_obj_t module, qstr name); void mp_import_all(mp_obj_t module); +#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NONE +NORETURN void mp_raise_type(const mp_obj_type_t *exc_type); +NORETURN void mp_raise_ValueError_no_msg(void); +NORETURN void mp_raise_TypeError_no_msg(void); +NORETURN void mp_raise_NotImplementedError_no_msg(void); +#define mp_raise_msg(exc_type, msg) mp_raise_type(exc_type) +#define mp_raise_msg_varg(exc_type, ...) mp_raise_type(exc_type) +#define mp_raise_ValueError(msg) mp_raise_ValueError_no_msg() +#define mp_raise_TypeError(msg) mp_raise_TypeError_no_msg() +#define mp_raise_NotImplementedError(msg) mp_raise_NotImplementedError_no_msg() +#else #define mp_raise_type(exc_type) mp_raise_msg(exc_type, NULL) NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, mp_rom_error_text_t msg); NORETURN void mp_raise_msg_varg(const mp_obj_type_t *exc_type, mp_rom_error_text_t fmt, ...); NORETURN void mp_raise_ValueError(mp_rom_error_text_t msg); NORETURN void mp_raise_TypeError(mp_rom_error_text_t msg); NORETURN void mp_raise_NotImplementedError(mp_rom_error_text_t msg); +#endif + NORETURN void mp_raise_OSError(int errno_); NORETURN void mp_raise_recursion_depth(void); |
