From 11ce38329b618601573cb2f6159d1acd98160f57 Mon Sep 17 00:00:00 2001 From: fennecdjay Date: Tue, 1 Oct 2019 23:31:22 +0200 Subject: [PATCH] :art: Use const t_int --- src/parse/check.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/parse/check.c b/src/parse/check.c index ff571a2f..ff8b969d 100644 --- a/src/parse/check.c +++ b/src/parse/check.c @@ -40,7 +40,8 @@ ANN static m_bool check_implicit(const Env env, const m_str str, ANN m_bool check_exp_array_subscripts(Env env, Exp exp) { CHECK_OB(check_exp(env, exp)) - do if(isa(exp->type, env->gwion->type[et_int]) < 0) + const Type t_int = env->gwion->type[et_int]; + do if(isa(exp->type, t_int) < 0) ERR_B(exp->pos, _("incompatible array subscript type '%s' ..."), exp->type->name) while((exp = exp->next)); return GW_OK; @@ -403,7 +404,8 @@ ANN static Type at_depth(const Env env, const Array_Sub array) { static inline m_bool index_is_int(const Env env, Exp e, m_uint *depth) { // TODO: use "@access" - do if(isa(e->type, env->gwion->type[et_int]) < 0) + const Type t_int = env->gwion->type[et_int]; + do if(isa(e->type, t_int) < 0) ERR_B(e->pos, _("array index %i must be of type 'int', not '%s'"), *depth, e->type->name) while(++(*depth) && (e = e->next)); @@ -1039,7 +1041,8 @@ ANN static m_bool do_stmt_auto(const Env env, const Stmt_Auto stmt) { } ANN static inline m_bool cond_type(const Env env, const Exp e) { - return check_implicit(env, "@repeat", e, env->gwion->type[et_int]); + const Type t_int = env->gwion->type[et_int]; + return check_implicit(env, "@repeat", e, t_int); } #define stmt_func_xxx(name, type, prolog, exp) describe_stmt_func(check, name, type, prolog, exp) -- 2.43.0