X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Ftypes%2Fset_func.c;h=c6ab80fd0ac091aead128c5ad432751bd62f3fbd;hb=ad2c22df5e451fffecc7b7ebdc9c5a4bb36e543e;hp=7e56637e325ab47278adc3bf16c3e7798bfbaaec;hpb=ddeb4918bce67ed63c5f4c8c4e250e92ebdef89d;p=m6w6%2Fext-psi diff --git a/src/types/set_func.c b/src/types/set_func.c index 7e56637..c6ab80f 100644 --- a/src/types/set_func.c +++ b/src/types/set_func.c @@ -204,8 +204,9 @@ static inline bool psi_set_func_validate_to_recursive(struct psi_data *data, bool psi_set_func_validate(struct psi_data *data, struct psi_set_func *func, struct psi_set_exp *set, struct psi_impl *impl, struct psi_decl *cb_decl) { - if (!psi_decl_var_validate(data, func->var, impl->decl, NULL, set) - && !psi_decl_var_validate(data, func->var, cb_decl, NULL, NULL) + if (!func->var->arg + && !psi_decl_var_validate(data, func->var, impl, impl->decl, NULL, set) + && !psi_decl_var_validate(data, func->var, NULL, cb_decl, NULL, NULL) && !psi_impl_get_temp_let_arg(impl, func->var)) { data->error(data, func->var->token, PSI_WARNING, "Unknown variable '%s' in implementation %s",