update readme
[m6w6/ext-psi] / src / types / set_stmt.c
index 2139dc45bd6fe7c6cabc9e85caec04b326c71902..80b75c5bc894a88a7e617ca9ce62ea39f0ffe948 100644 (file)
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *******************************************************************************/
 
-#include "php_psi_stdinc.h"
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#else
+# include "php_config.h"
+#endif
 #include "data.h"
 #include "call.h"
 
 struct psi_set_stmt *psi_set_stmt_init(struct psi_set_exp *exp)
 {
-       struct psi_set_stmt *set = calloc(1, sizeof(*set));
+       struct psi_set_stmt *set = pecalloc(1, sizeof(*set), 1);
        set->exp = exp;
        return set;
 }
@@ -46,18 +50,16 @@ void psi_set_stmt_free(struct psi_set_stmt **set_ptr)
 
                *set_ptr = NULL;
                psi_set_exp_free(&set->exp);
-               if (set->token) {
-                       free(set->token);
-               }
+               psi_token_free(&set->token);
                free(set);
        }
 }
 
-void psi_set_stmt_dump(int fd, struct psi_set_stmt *set)
+void psi_set_stmt_dump(struct psi_dump *dump, struct psi_set_stmt *set)
 {
-       dprintf(fd, "\tset ");
-       psi_set_exp_dump(fd, set->exp, 1, 1);
-       dprintf(fd, ";\n");
+       PSI_DUMP(dump, "\tset ");
+       psi_set_exp_dump(dump, set->exp, 1, 1);
+       PSI_DUMP(dump, ";\n");
 }
 
 
@@ -72,13 +74,13 @@ bool psi_set_stmts_validate(struct psi_data *data, struct psi_validate_scope *sc
                if (!set->exp->var) {
                        data->error(data, set->token, PSI_WARNING,
                                        "Missing variable of `set` statement of implementation '%s'",
-                                       scope->impl->func->name);
+                                       scope->impl->func->name->val);
                        return false;
                }
                if (!psi_impl_get_arg(scope->impl, set->exp->var)) {
                        data->error(data, set->token, PSI_WARNING,
                                        "Unknown variable '%s' of `set` statement of implementation '%s'",
-                                       set->exp->var->name, scope->impl->func->name);
+                                       set->exp->var->name->val, scope->impl->func->name->val);
                        return false;
                }
 
@@ -92,7 +94,7 @@ bool psi_set_stmts_validate(struct psi_data *data, struct psi_validate_scope *sc
                                if (!psi_impl_get_temp_let_arg(scope->impl, set->exp->data.func->var)) {
                                        data->error(data, set->token, PSI_WARNING,
                                                        "Unknown variable '%s' of `set` statement of implementation '%s'",
-                                                       set->exp->data.func->var->name, scope->impl->func->name);
+                                                       set->exp->data.func->var->name->val, scope->impl->func->name->val);
                                        scope->current_set = NULL;
                                        return false;
                                }