diff --git a/py/makemoduledefs.py b/py/makemoduledefs.py index 5a1362a4c9..b1e118bf37 100644 --- a/py/makemoduledefs.py +++ b/py/makemoduledefs.py @@ -103,6 +103,9 @@ def generate_module_table_header(modules): def generate_module_delegations(delegations): + if not delegations: + return + print("\n#define MICROPY_MODULE_DELEGATIONS \\") for obj_module, fun_name in delegations: print( diff --git a/py/objmodule.c b/py/objmodule.c index ad96a3be28..8ffae139bc 100644 --- a/py/objmodule.c +++ b/py/objmodule.c @@ -230,7 +230,7 @@ mp_obj_t mp_module_get_builtin(qstr module_name, bool extensible) { } STATIC void module_attr_try_delegation(mp_obj_t self_in, qstr attr, mp_obj_t *dest) { - #if MICROPY_MODULE_ATTR_DELEGATION + #if MICROPY_MODULE_ATTR_DELEGATION && defined(MICROPY_MODULE_DELEGATIONS) // Delegate lookup to a module's custom attr method. size_t n = MP_ARRAY_SIZE(mp_builtin_module_delegation_table); for (size_t i = 0; i < n; ++i) {