From e9ef69d3ceab6f208c90062821f7553f29c0f6ca Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Astor?= Date: Tue, 26 Apr 2022 21:15:11 +0200 Subject: [PATCH] :art: Improve partial --- src/lib/lib_func.c | 1 - src/parse/check.c | 1 - src/parse/partial.c | 3 ++- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/lib/lib_func.c b/src/lib/lib_func.c index 78ed4caa..5ce11242 100644 --- a/src/lib/lib_func.c +++ b/src/lib/lib_func.c @@ -256,7 +256,6 @@ ANN static m_bool _check_lambda(const Env env, Exp_Lambda *l, Arg *arg = mp_vector_at(args, Arg, i); arg->td = type2td(env->gwion, known_type(env, base->td), exp_self(l)->pos); } - } l->def->base->td = type2td(env->gwion, known_type(env, fdef->base->td), exp_self(l)->pos); diff --git a/src/parse/check.c b/src/parse/check.c index 7fec714a..f01a3a0b 100644 --- a/src/parse/check.c +++ b/src/parse/check.c @@ -358,7 +358,6 @@ ANN static Type prim_id_non_res(const Env env, const Symbol *data) { prim_self(data)->value = env->gwion->type[et_op]->info->value; return env->gwion->type[et_op]; } -puts(s_name(*data)); const m_str hint = (!env->func || strcmp(env->func->name, "in spork")) ? NULL : "vapturelist?"; gwerr_basic(_("Invalid variable"), _("not legit at this point."), hint, diff --git a/src/parse/partial.c b/src/parse/partial.c index 85aab198..e5969192 100644 --- a/src/parse/partial.c +++ b/src/parse/partial.c @@ -79,8 +79,9 @@ ANN Func find_match(const Env env, Func func, const Exp exp, const bool implicit if(!is_typed_hole(env, e)) { const Exp next = e->next; e->next = NULL; - check_exp(env, e); + const m_bool ret = check_exp(env, e); e->next = next; + CHECK_OO(ret); } else CHECK_OO((e->type = known_type(env, e->d.exp_cast.td))); if (!func_match_inner(env, e, arg->type, implicit, specific)) break; -- 2.43.0