From 3dea8c9e926d0c1b1049ff9d5abeedfb001fc201 Mon Sep 17 00:00:00 2001 From: Damien George Date: Fri, 30 Sep 2016 12:34:05 +1000 Subject: py/scope: Use lookup-table to determine a scope's simple name. Generates slightly smaller and more efficient code. --- py/emitcommon.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'py/emitcommon.c') diff --git a/py/emitcommon.c b/py/emitcommon.c index 435188f36..2925f4caf 100644 --- a/py/emitcommon.c +++ b/py/emitcommon.c @@ -50,12 +50,12 @@ void mp_emit_common_get_id_for_modification(scope_t *scope, qstr qst) { bool added; id_info_t *id = scope_find_or_add_id(scope, qst, &added); if (added) { - if (scope->kind == SCOPE_MODULE || scope->kind == SCOPE_CLASS) { - id->kind = ID_INFO_KIND_GLOBAL_IMPLICIT; - } else { + if (SCOPE_IS_FUNC_LIKE(scope->kind)) { id->kind = ID_INFO_KIND_LOCAL; + } else { + id->kind = ID_INFO_KIND_GLOBAL_IMPLICIT; } - } else if (scope->kind >= SCOPE_FUNCTION && scope->kind <= SCOPE_GEN_EXPR && id->kind == ID_INFO_KIND_GLOBAL_IMPLICIT) { + } else if (SCOPE_IS_FUNC_LIKE(scope->kind) && id->kind == ID_INFO_KIND_GLOBAL_IMPLICIT) { // rebind as a local variable id->kind = ID_INFO_KIND_LOCAL; } -- cgit v1.2.3