ref: temporary comment out infinite loop check
This commit is contained in:
+12
-11
@@ -258,7 +258,7 @@ fzl_walk_res_t walk(fzl_walker_t *walker, fzl_node_t *node)
|
||||
|
||||
push_op(walker, FZL_OPCODE_MK_ENVTABLE);
|
||||
walker->syms[walker->sym_top++] = fzl_mksymt();
|
||||
size_t loop_begin_ip = walker->op_count;
|
||||
// size_t loop_begin_ip = walker->op_count;
|
||||
|
||||
if (node->loop.init)
|
||||
{
|
||||
@@ -316,16 +316,17 @@ fzl_walk_res_t walk(fzl_walker_t *walker, fzl_node_t *node)
|
||||
|
||||
push_op(walker, FZL_OPCODE_RM_ENVTABLE);
|
||||
|
||||
bool is_infinite =
|
||||
is_infinite_loop(walker, node, loop_begin_ip, walker->op_count - 2);
|
||||
if (is_infinite)
|
||||
{
|
||||
free(newctx->breaks);
|
||||
snprintf(wlast_err, sizeof(wlast_err),
|
||||
"'%s': infinite loop detected at %ld:%ld",
|
||||
node->token->filename, node->token->ln, node->token->cn);
|
||||
return (fzl_walk_res_t){.error = true, .error_msg = wlast_err};
|
||||
}
|
||||
// bool is_infinite =
|
||||
// is_infinite_loop(walker, node, loop_begin_ip, walker->op_count -
|
||||
// 2);
|
||||
// if (is_infinite)
|
||||
// {
|
||||
// free(newctx->breaks);
|
||||
// snprintf(wlast_err, sizeof(wlast_err),
|
||||
// "'%s': infinite loop detected at %ld:%ld",
|
||||
// node->token->filename, node->token->ln, node->token->cn);
|
||||
// return (fzl_walk_res_t){.error = true, .error_msg = wlast_err};
|
||||
// }
|
||||
|
||||
for (size_t i = walker->sym_top - 1; i > newctx->initial_env_lvl; i--)
|
||||
fzl_freesymt(walker->syms[--walker->sym_top]);
|
||||
|
||||
Reference in New Issue
Block a user