parser: LET foo = CALLBACK[(var_list spec) AS ] LET_CALLBACK
[m6w6/ext-psi] / src / types / set_func.c
index 29d32606e32fc38e08ee76b1a49d91181c76881e..c6ab80fd0ac091aead128c5ad432751bd62f3fbd 100644 (file)
@@ -204,7 +204,8 @@ 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, impl->decl, NULL, set)
+       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,