{
dprintf(fd, "%s%s",
psi_t_indirection(var->pointer_level - !!var->array_size),
- var->name ? var->name : "<>");
+ var->name ? var->name : "/**/");
if (var->array_size) {
dprintf(fd, "[%u]", var->array_size);
}
}
bool psi_decl_var_validate(struct psi_data *data, struct psi_decl_var *dvar,
- struct psi_decl *decl, struct psi_let_exp *let_exp,
- struct psi_set_exp *set_exp)
+ struct psi_impl *impl, struct psi_decl *decl,
+ struct psi_let_exp *let_exp, struct psi_set_exp *set_exp)
{
bool okay = false;
struct psi_let_exp *current_let_exp = let_exp;
}
}
- if (decl && !okay && psi_decl_get_arg(decl, dvar)) {
+ if (!okay && impl && psi_impl_get_decl_arg(impl, dvar)) {
+ okay = true;
+ }
+ if (!okay && decl && psi_decl_get_arg(decl, dvar)) {
okay = true;
}