ref: remove backpatch table in walker

This commit is contained in:
samsonium
2026-10-14 20:10:37 +03:00
parent 83ff0b5774
commit cc3087296f
2 changed files with 0 additions and 15 deletions
-3
View File
@@ -30,9 +30,6 @@ typedef struct
fzl_symtable_t *syms[64];
size_t sym_top;
size_t bp_table[64];
size_t bp_top;
} fzl_walker_t;
// Allocate new walker
-12
View File
@@ -13,9 +13,6 @@
#include <stdlib.h>
#include <string.h>
// TODO: implement backpatching struct for jumping on if/else blocks
// TODO: implement conditional binops; conditions
char wlast_err[256];
fzl_walker_t *fzl_mkwalker(fzl_node_t *root)
@@ -55,9 +52,6 @@ fzl_walker_t *fzl_mkwalker(fzl_node_t *root)
return NULL;
}
memset(walker->bp_table, 0, sizeof(walker->bp_table));
walker->bp_top = 0;
return walker;
}
@@ -569,12 +563,6 @@ int fzl_walk(fzl_walker_t *walker)
fzl_walk_res_t result = walk(walker, walker->root);
push_op(walker, FZL_OPCODE_RM_ENVTABLE);
if (walker->bp_top > 0)
{
snprintf(wlast_err, sizeof(wlast_err), "unfinished conditional block");
return -1;
}
if (result.error && !wlast_err[0])
snprintf(wlast_err, sizeof(wlast_err), "%s", result.error_msg);