mirror of
https://github.com/micropython/micropython.git
synced 2026-01-05 03:30:14 +01:00
all: Rename the "NORETURN" macro to "MP_NORETURN".
Some checks failed
JavaScript code lint and formatting with Biome / eslint (push) Has been cancelled
Check code formatting / code-formatting (push) Has been cancelled
Check spelling with codespell / codespell (push) Has been cancelled
Build docs / build (push) Has been cancelled
Check examples / embedding (push) Has been cancelled
Package mpremote / build (push) Has been cancelled
.mpy file format and tools / test (push) Has been cancelled
Build ports metadata / build (push) Has been cancelled
alif port / build_alif (alif_ae3_build) (push) Has been cancelled
cc3200 port / build (push) Has been cancelled
esp32 port / build_idf (esp32_build_cmod_spiram_s2) (push) Has been cancelled
esp32 port / build_idf (esp32_build_s3_c3) (push) Has been cancelled
esp8266 port / build (push) Has been cancelled
mimxrt port / build (push) Has been cancelled
nrf port / build (push) Has been cancelled
powerpc port / build (push) Has been cancelled
qemu port / build_and_test_arm (push) Has been cancelled
qemu port / build_and_test_rv32 (push) Has been cancelled
renesas-ra port / build_renesas_ra_board (push) Has been cancelled
rp2 port / build (push) Has been cancelled
samd port / build (push) Has been cancelled
stm32 port / build_stm32 (stm32_misc_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_nucleo_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_pyb_build) (push) Has been cancelled
unix port / minimal (push) Has been cancelled
unix port / reproducible (push) Has been cancelled
unix port / standard (push) Has been cancelled
unix port / standard_v2 (push) Has been cancelled
unix port / coverage (push) Has been cancelled
unix port / coverage_32bit (push) Has been cancelled
unix port / nanbox (push) Has been cancelled
unix port / float (push) Has been cancelled
unix port / stackless_clang (push) Has been cancelled
unix port / float_clang (push) Has been cancelled
unix port / settrace (push) Has been cancelled
unix port / settrace_stackless (push) Has been cancelled
unix port / macos (push) Has been cancelled
unix port / qemu_mips (push) Has been cancelled
unix port / qemu_arm (push) Has been cancelled
unix port / qemu_riscv64 (push) Has been cancelled
webassembly port / build (push) Has been cancelled
windows port / build-vs (Debug, x64, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x64, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, x86, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x86, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2019, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2019, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2022, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-latest, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2019, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2019, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2022, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-latest, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, dev) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, standard) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, dev) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, standard) (push) Has been cancelled
windows port / cross-build-on-linux (push) Has been cancelled
zephyr port / build (push) Has been cancelled
Python code lint and formatting with ruff / ruff (push) Has been cancelled
Some checks failed
JavaScript code lint and formatting with Biome / eslint (push) Has been cancelled
Check code formatting / code-formatting (push) Has been cancelled
Check spelling with codespell / codespell (push) Has been cancelled
Build docs / build (push) Has been cancelled
Check examples / embedding (push) Has been cancelled
Package mpremote / build (push) Has been cancelled
.mpy file format and tools / test (push) Has been cancelled
Build ports metadata / build (push) Has been cancelled
alif port / build_alif (alif_ae3_build) (push) Has been cancelled
cc3200 port / build (push) Has been cancelled
esp32 port / build_idf (esp32_build_cmod_spiram_s2) (push) Has been cancelled
esp32 port / build_idf (esp32_build_s3_c3) (push) Has been cancelled
esp8266 port / build (push) Has been cancelled
mimxrt port / build (push) Has been cancelled
nrf port / build (push) Has been cancelled
powerpc port / build (push) Has been cancelled
qemu port / build_and_test_arm (push) Has been cancelled
qemu port / build_and_test_rv32 (push) Has been cancelled
renesas-ra port / build_renesas_ra_board (push) Has been cancelled
rp2 port / build (push) Has been cancelled
samd port / build (push) Has been cancelled
stm32 port / build_stm32 (stm32_misc_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_nucleo_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_pyb_build) (push) Has been cancelled
unix port / minimal (push) Has been cancelled
unix port / reproducible (push) Has been cancelled
unix port / standard (push) Has been cancelled
unix port / standard_v2 (push) Has been cancelled
unix port / coverage (push) Has been cancelled
unix port / coverage_32bit (push) Has been cancelled
unix port / nanbox (push) Has been cancelled
unix port / float (push) Has been cancelled
unix port / stackless_clang (push) Has been cancelled
unix port / float_clang (push) Has been cancelled
unix port / settrace (push) Has been cancelled
unix port / settrace_stackless (push) Has been cancelled
unix port / macos (push) Has been cancelled
unix port / qemu_mips (push) Has been cancelled
unix port / qemu_arm (push) Has been cancelled
unix port / qemu_riscv64 (push) Has been cancelled
webassembly port / build (push) Has been cancelled
windows port / build-vs (Debug, x64, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x64, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, x86, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x86, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2019, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2019, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-2022, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, windows-latest, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2019, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2019, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2022, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-2022, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-latest, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, windows-latest, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, dev) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, standard) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, dev) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, standard) (push) Has been cancelled
windows port / cross-build-on-linux (push) Has been cancelled
zephyr port / build (push) Has been cancelled
Python code lint and formatting with ruff / ruff (push) Has been cancelled
This commit renames the NORETURN macro, indicating to the compiler
that a function does not return, into MP_NORETURN to maintain the same
naming convention of other similar macros.
To maintain compaitiblity with existing code NORETURN is aliased to
MP_NORETURN, but it is also deprecated for MicroPython v2.
This changeset was created using a similar process to
decf8e6a8b ("all: Remove the "STATIC"
macro and just use "static" instead."), with no documentation or python
scripts to change to reflect the new macro name.
Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
This commit is contained in:
committed by
Damien George
parent
69993daa5c
commit
f47e214cdc
@@ -137,12 +137,12 @@ void mp_arg_parse_all_kw_array(size_t n_pos, size_t n_kw, const mp_obj_t *args,
|
||||
mp_arg_parse_all(n_pos, args, &kw_args, n_allowed, allowed, out_vals);
|
||||
}
|
||||
|
||||
NORETURN void mp_arg_error_terse_mismatch(void) {
|
||||
MP_NORETURN void mp_arg_error_terse_mismatch(void) {
|
||||
mp_raise_TypeError(MP_ERROR_TEXT("argument num/types mismatch"));
|
||||
}
|
||||
|
||||
#if MICROPY_CPYTHON_COMPAT
|
||||
NORETURN void mp_arg_error_unimpl_kw(void) {
|
||||
MP_NORETURN void mp_arg_error_unimpl_kw(void) {
|
||||
mp_raise_NotImplementedError(MP_ERROR_TEXT("keyword argument(s) not implemented - use normal args instead"));
|
||||
}
|
||||
#endif
|
||||
|
||||
2
py/bc.c
2
py/bc.c
@@ -88,7 +88,7 @@ const byte *mp_decode_uint_skip(const byte *ptr) {
|
||||
return ptr;
|
||||
}
|
||||
|
||||
static NORETURN void fun_pos_args_mismatch(mp_obj_fun_bc_t *f, size_t expected, size_t given) {
|
||||
static MP_NORETURN void fun_pos_args_mismatch(mp_obj_fun_bc_t *f, size_t expected, size_t given) {
|
||||
#if MICROPY_ERROR_REPORTING <= MICROPY_ERROR_REPORTING_TERSE
|
||||
// generic message, used also for other argument issues
|
||||
(void)f;
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
#define m_realloc(ptr, new_num_bytes) (m_realloc_dyn((ptr), (new_num_bytes)))
|
||||
#define m_realloc_maybe(ptr, new_num_bytes, allow_move) (m_realloc_maybe_dyn((ptr), (new_num_bytes), (allow_move)))
|
||||
|
||||
static NORETURN inline void m_malloc_fail_dyn(size_t num_bytes) {
|
||||
static MP_NORETURN inline void m_malloc_fail_dyn(size_t num_bytes) {
|
||||
mp_fun_table.raise_msg(
|
||||
mp_fun_table.load_global(MP_QSTR_MemoryError),
|
||||
"memory allocation failed");
|
||||
@@ -295,7 +295,7 @@ static inline mp_obj_t mp_obj_new_exception_arg1_dyn(const mp_obj_type_t *exc_ty
|
||||
return mp_call_function_n_kw(MP_OBJ_FROM_PTR(exc_type), 1, 0, &args[0]);
|
||||
}
|
||||
|
||||
static NORETURN inline void mp_raise_dyn(mp_obj_t o) {
|
||||
static MP_NORETURN inline void mp_raise_dyn(mp_obj_t o) {
|
||||
mp_fun_table.raise(o);
|
||||
for (;;) {
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ void *m_realloc(void *ptr, size_t new_num_bytes);
|
||||
void *m_realloc_maybe(void *ptr, size_t new_num_bytes, bool allow_move);
|
||||
void m_free(void *ptr);
|
||||
#endif
|
||||
NORETURN void m_malloc_fail(size_t num_bytes);
|
||||
MP_NORETURN void m_malloc_fail(size_t num_bytes);
|
||||
|
||||
#if MICROPY_TRACKED_ALLOC
|
||||
// These alloc/free functions track the pointers in a linked list so the GC does not reclaim
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
#define MP_PI_4 MICROPY_FLOAT_CONST(0.78539816339744830962)
|
||||
#define MP_3_PI_4 MICROPY_FLOAT_CONST(2.35619449019234492885)
|
||||
|
||||
static NORETURN void math_error(void) {
|
||||
static MP_NORETURN void math_error(void) {
|
||||
mp_raise_ValueError(MP_ERROR_TEXT("math domain error"));
|
||||
}
|
||||
|
||||
|
||||
@@ -2115,8 +2115,12 @@ typedef double mp_float_t;
|
||||
#endif // INT_FMT
|
||||
|
||||
// Modifier for function which doesn't return
|
||||
#ifndef NORETURN
|
||||
#define NORETURN __attribute__((noreturn))
|
||||
#ifndef MP_NORETURN
|
||||
#define MP_NORETURN __attribute__((noreturn))
|
||||
#endif
|
||||
|
||||
#if !MICROPY_PREVIEW_VERSION_2
|
||||
#define NORETURN MP_NORETURN
|
||||
#endif
|
||||
|
||||
// Modifier for weak functions
|
||||
|
||||
@@ -143,7 +143,7 @@ typedef struct _mp_fun_table_t {
|
||||
int (*printf_)(const mp_print_t *print, const char *fmt, ...);
|
||||
int (*vprintf_)(const mp_print_t *print, const char *fmt, va_list args);
|
||||
#if defined(__GNUC__)
|
||||
NORETURN // Only certain compilers support no-return attributes in function pointer declarations
|
||||
MP_NORETURN // Only certain compilers support no-return attributes in function pointer declarations
|
||||
#endif
|
||||
void (*raise_msg)(const mp_obj_type_t *exc_type, mp_rom_error_text_t msg);
|
||||
const mp_obj_type_t *(*obj_get_type)(mp_const_obj_t o_in);
|
||||
|
||||
2
py/nlr.c
2
py/nlr.c
@@ -81,7 +81,7 @@ void nlr_call_jump_callbacks(nlr_buf_t *nlr) {
|
||||
}
|
||||
|
||||
#if MICROPY_ENABLE_VM_ABORT
|
||||
NORETURN void nlr_jump_abort(void) {
|
||||
MP_NORETURN void nlr_jump_abort(void) {
|
||||
MP_STATE_THREAD(nlr_top) = MP_STATE_VM(nlr_abort);
|
||||
nlr_jump(NULL);
|
||||
}
|
||||
|
||||
6
py/nlr.h
6
py/nlr.h
@@ -177,18 +177,18 @@ unsigned int nlr_push(nlr_buf_t *);
|
||||
|
||||
unsigned int nlr_push_tail(nlr_buf_t *top);
|
||||
void nlr_pop(void);
|
||||
NORETURN void nlr_jump(void *val);
|
||||
MP_NORETURN void nlr_jump(void *val);
|
||||
|
||||
#if MICROPY_ENABLE_VM_ABORT
|
||||
#define nlr_set_abort(buf) MP_STATE_VM(nlr_abort) = buf
|
||||
#define nlr_get_abort() MP_STATE_VM(nlr_abort)
|
||||
NORETURN void nlr_jump_abort(void);
|
||||
MP_NORETURN void nlr_jump_abort(void);
|
||||
#endif
|
||||
|
||||
// This must be implemented by a port. It's called by nlr_jump
|
||||
// if no nlr buf has been pushed. It must not return, but rather
|
||||
// should bail out with a fatal error.
|
||||
NORETURN void nlr_jump_fail(void *val);
|
||||
MP_NORETURN void nlr_jump_fail(void *val);
|
||||
|
||||
// use nlr_raise instead of nlr_jump so that debugging is easier
|
||||
#ifndef MICROPY_DEBUG_NLR
|
||||
|
||||
@@ -56,7 +56,7 @@ __asm(
|
||||
#endif
|
||||
);
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
MP_STATIC_ASSERT(offsetof(nlr_buf_t, regs) == 16); // asm assumes it
|
||||
|
||||
@@ -57,7 +57,7 @@ __asm(
|
||||
".end nlr_push \n"
|
||||
);
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
__asm(
|
||||
"move $4, %0 \n"
|
||||
|
||||
@@ -78,7 +78,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm__ volatile (
|
||||
@@ -167,7 +167,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm__ volatile (
|
||||
|
||||
@@ -50,7 +50,7 @@ __attribute__((naked)) unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
);
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
__asm volatile (
|
||||
"add x10, x0, %0 \n" // Load nlr_buf address.
|
||||
|
||||
@@ -50,7 +50,7 @@ __attribute__((naked)) unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
);
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
__asm volatile (
|
||||
"add x10, x0, %0 \n" // Load nlr_buf address.
|
||||
|
||||
@@ -100,7 +100,7 @@ __attribute__((naked)) unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
#endif
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm volatile (
|
||||
|
||||
@@ -100,7 +100,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
#endif
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm volatile (
|
||||
|
||||
@@ -78,7 +78,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
#endif
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm volatile (
|
||||
|
||||
@@ -55,7 +55,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
|
||||
return 0; // needed to silence compiler warning
|
||||
}
|
||||
|
||||
NORETURN void nlr_jump(void *val) {
|
||||
MP_NORETURN void nlr_jump(void *val) {
|
||||
MP_NLR_JUMP_HEAD(val, top)
|
||||
|
||||
__asm volatile (
|
||||
|
||||
@@ -40,7 +40,7 @@ static mp_obj_t str_modulo_format(mp_obj_t pattern, size_t n_args, const mp_obj_
|
||||
#endif
|
||||
|
||||
static mp_obj_t mp_obj_new_bytes_iterator(mp_obj_t str, mp_obj_iter_buf_t *iter_buf);
|
||||
static NORETURN void bad_implicit_conversion(mp_obj_t self_in);
|
||||
static MP_NORETURN void bad_implicit_conversion(mp_obj_t self_in);
|
||||
|
||||
static mp_obj_t mp_obj_new_str_type_from_vstr(const mp_obj_type_t *type, vstr_t *vstr);
|
||||
|
||||
@@ -1001,7 +1001,7 @@ static mp_obj_t arg_as_int(mp_obj_t arg) {
|
||||
#endif
|
||||
|
||||
#if MICROPY_ERROR_REPORTING <= MICROPY_ERROR_REPORTING_TERSE
|
||||
static NORETURN void terse_str_format_value_error(void) {
|
||||
static MP_NORETURN void terse_str_format_value_error(void) {
|
||||
mp_raise_ValueError(MP_ERROR_TEXT("bad format string"));
|
||||
}
|
||||
#else
|
||||
@@ -2357,7 +2357,7 @@ bool mp_obj_str_equal(mp_obj_t s1, mp_obj_t s2) {
|
||||
}
|
||||
}
|
||||
|
||||
static NORETURN void bad_implicit_conversion(mp_obj_t self_in) {
|
||||
static MP_NORETURN void bad_implicit_conversion(mp_obj_t self_in) {
|
||||
#if MICROPY_ERROR_REPORTING <= MICROPY_ERROR_REPORTING_TERSE
|
||||
mp_raise_TypeError(MP_ERROR_TEXT("can't convert to str implicitly"));
|
||||
#else
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
#include <math.h>
|
||||
#endif
|
||||
|
||||
static NORETURN void raise_exc(mp_obj_t exc, mp_lexer_t *lex) {
|
||||
static MP_NORETURN void raise_exc(mp_obj_t exc, mp_lexer_t *lex) {
|
||||
// if lex!=NULL then the parser called us and we need to convert the
|
||||
// exception's type from ValueError to SyntaxError and add traceback info
|
||||
if (lex != NULL) {
|
||||
|
||||
32
py/runtime.c
32
py/runtime.c
@@ -1649,7 +1649,7 @@ mp_obj_t mp_parse_compile_execute(mp_lexer_t *lex, mp_parse_input_kind_t parse_i
|
||||
|
||||
#endif // MICROPY_ENABLE_COMPILER
|
||||
|
||||
NORETURN void m_malloc_fail(size_t num_bytes) {
|
||||
MP_NORETURN void m_malloc_fail(size_t num_bytes) {
|
||||
DEBUG_printf("memory allocation failed, allocating %u bytes\n", (uint)num_bytes);
|
||||
#if MICROPY_ENABLE_GC
|
||||
if (gc_is_locked()) {
|
||||
@@ -1662,25 +1662,25 @@ NORETURN void m_malloc_fail(size_t num_bytes) {
|
||||
|
||||
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NONE
|
||||
|
||||
NORETURN void mp_raise_type(const mp_obj_type_t *exc_type) {
|
||||
MP_NORETURN void mp_raise_type(const mp_obj_type_t *exc_type) {
|
||||
nlr_raise(mp_obj_new_exception(exc_type));
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_ValueError_no_msg(void) {
|
||||
MP_NORETURN void mp_raise_ValueError_no_msg(void) {
|
||||
mp_raise_type(&mp_type_ValueError);
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_TypeError_no_msg(void) {
|
||||
MP_NORETURN void mp_raise_TypeError_no_msg(void) {
|
||||
mp_raise_type(&mp_type_TypeError);
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_NotImplementedError_no_msg(void) {
|
||||
MP_NORETURN void mp_raise_NotImplementedError_no_msg(void) {
|
||||
mp_raise_type(&mp_type_NotImplementedError);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, mp_rom_error_text_t msg) {
|
||||
MP_NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, mp_rom_error_text_t msg) {
|
||||
if (msg == NULL) {
|
||||
nlr_raise(mp_obj_new_exception(exc_type));
|
||||
} else {
|
||||
@@ -1688,7 +1688,7 @@ NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, mp_rom_error_text_t ms
|
||||
}
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_msg_varg(const mp_obj_type_t *exc_type, mp_rom_error_text_t fmt, ...) {
|
||||
MP_NORETURN void mp_raise_msg_varg(const mp_obj_type_t *exc_type, mp_rom_error_text_t fmt, ...) {
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
mp_obj_t exc = mp_obj_new_exception_msg_vlist(exc_type, fmt, args);
|
||||
@@ -1696,25 +1696,25 @@ NORETURN void mp_raise_msg_varg(const mp_obj_type_t *exc_type, mp_rom_error_text
|
||||
nlr_raise(exc);
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_ValueError(mp_rom_error_text_t msg) {
|
||||
MP_NORETURN void mp_raise_ValueError(mp_rom_error_text_t msg) {
|
||||
mp_raise_msg(&mp_type_ValueError, msg);
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_TypeError(mp_rom_error_text_t msg) {
|
||||
MP_NORETURN void mp_raise_TypeError(mp_rom_error_text_t msg) {
|
||||
mp_raise_msg(&mp_type_TypeError, msg);
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_NotImplementedError(mp_rom_error_text_t msg) {
|
||||
MP_NORETURN void mp_raise_NotImplementedError(mp_rom_error_text_t msg) {
|
||||
mp_raise_msg(&mp_type_NotImplementedError, msg);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
NORETURN void mp_raise_type_arg(const mp_obj_type_t *exc_type, mp_obj_t arg) {
|
||||
MP_NORETURN void mp_raise_type_arg(const mp_obj_type_t *exc_type, mp_obj_t arg) {
|
||||
nlr_raise(mp_obj_new_exception_arg1(exc_type, arg));
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_StopIteration(mp_obj_t arg) {
|
||||
MP_NORETURN void mp_raise_StopIteration(mp_obj_t arg) {
|
||||
if (arg == MP_OBJ_NULL) {
|
||||
mp_raise_type(&mp_type_StopIteration);
|
||||
} else {
|
||||
@@ -1722,7 +1722,7 @@ NORETURN void mp_raise_StopIteration(mp_obj_t arg) {
|
||||
}
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_TypeError_int_conversion(mp_const_obj_t arg) {
|
||||
MP_NORETURN void mp_raise_TypeError_int_conversion(mp_const_obj_t arg) {
|
||||
#if MICROPY_ERROR_REPORTING <= MICROPY_ERROR_REPORTING_TERSE
|
||||
(void)arg;
|
||||
mp_raise_TypeError(MP_ERROR_TEXT("can't convert to int"));
|
||||
@@ -1732,11 +1732,11 @@ NORETURN void mp_raise_TypeError_int_conversion(mp_const_obj_t arg) {
|
||||
#endif
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_OSError(int errno_) {
|
||||
MP_NORETURN void mp_raise_OSError(int errno_) {
|
||||
mp_raise_type_arg(&mp_type_OSError, MP_OBJ_NEW_SMALL_INT(errno_));
|
||||
}
|
||||
|
||||
NORETURN void mp_raise_OSError_with_filename(int errno_, const char *filename) {
|
||||
MP_NORETURN void mp_raise_OSError_with_filename(int errno_, const char *filename) {
|
||||
vstr_t vstr;
|
||||
vstr_init(&vstr, 32);
|
||||
vstr_printf(&vstr, "can't open %s", filename);
|
||||
@@ -1746,7 +1746,7 @@ NORETURN void mp_raise_OSError_with_filename(int errno_, const char *filename) {
|
||||
}
|
||||
|
||||
#if MICROPY_STACK_CHECK || MICROPY_ENABLE_PYSTACK
|
||||
NORETURN void mp_raise_recursion_depth(void) {
|
||||
MP_NORETURN void mp_raise_recursion_depth(void) {
|
||||
mp_raise_type_arg(&mp_type_RuntimeError, MP_OBJ_NEW_QSTR(MP_QSTR_maximum_space_recursion_space_depth_space_exceeded));
|
||||
}
|
||||
#endif
|
||||
|
||||
34
py/runtime.h
34
py/runtime.h
@@ -136,8 +136,8 @@ static inline void mp_arg_check_num(size_t n_args, size_t n_kw, size_t n_args_mi
|
||||
}
|
||||
void mp_arg_parse_all(size_t n_pos, const mp_obj_t *pos, mp_map_t *kws, size_t n_allowed, const mp_arg_t *allowed, mp_arg_val_t *out_vals);
|
||||
void mp_arg_parse_all_kw_array(size_t n_pos, size_t n_kw, const mp_obj_t *args, size_t n_allowed, const mp_arg_t *allowed, mp_arg_val_t *out_vals);
|
||||
NORETURN void mp_arg_error_terse_mismatch(void);
|
||||
NORETURN void mp_arg_error_unimpl_kw(void);
|
||||
MP_NORETURN void mp_arg_error_terse_mismatch(void);
|
||||
MP_NORETURN void mp_arg_error_unimpl_kw(void);
|
||||
|
||||
static inline mp_obj_dict_t *mp_locals_get(void) {
|
||||
return MP_STATE_THREAD(dict_locals);
|
||||
@@ -246,10 +246,10 @@ 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);
|
||||
MP_NORETURN void mp_raise_type(const mp_obj_type_t *exc_type);
|
||||
MP_NORETURN void mp_raise_ValueError_no_msg(void);
|
||||
MP_NORETURN void mp_raise_TypeError_no_msg(void);
|
||||
MP_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()
|
||||
@@ -257,19 +257,19 @@ NORETURN void mp_raise_NotImplementedError_no_msg(void);
|
||||
#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);
|
||||
MP_NORETURN void mp_raise_msg(const mp_obj_type_t *exc_type, mp_rom_error_text_t msg);
|
||||
MP_NORETURN void mp_raise_msg_varg(const mp_obj_type_t *exc_type, mp_rom_error_text_t fmt, ...);
|
||||
MP_NORETURN void mp_raise_ValueError(mp_rom_error_text_t msg);
|
||||
MP_NORETURN void mp_raise_TypeError(mp_rom_error_text_t msg);
|
||||
MP_NORETURN void mp_raise_NotImplementedError(mp_rom_error_text_t msg);
|
||||
#endif
|
||||
|
||||
NORETURN void mp_raise_type_arg(const mp_obj_type_t *exc_type, mp_obj_t arg);
|
||||
NORETURN void mp_raise_StopIteration(mp_obj_t arg);
|
||||
NORETURN void mp_raise_TypeError_int_conversion(mp_const_obj_t arg);
|
||||
NORETURN void mp_raise_OSError(int errno_);
|
||||
NORETURN void mp_raise_OSError_with_filename(int errno_, const char *filename);
|
||||
NORETURN void mp_raise_recursion_depth(void);
|
||||
MP_NORETURN void mp_raise_type_arg(const mp_obj_type_t *exc_type, mp_obj_t arg);
|
||||
MP_NORETURN void mp_raise_StopIteration(mp_obj_t arg);
|
||||
MP_NORETURN void mp_raise_TypeError_int_conversion(mp_const_obj_t arg);
|
||||
MP_NORETURN void mp_raise_OSError(int errno_);
|
||||
MP_NORETURN void mp_raise_OSError_with_filename(int errno_, const char *filename);
|
||||
MP_NORETURN void mp_raise_recursion_depth(void);
|
||||
|
||||
#if MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG
|
||||
#undef mp_check_self
|
||||
|
||||
Reference in New Issue
Block a user