mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
mruby-compiler: inline codegen_undef into gen_undef_var
remove codegen_undef wrapper function and inline its logic directly into gen_undef_var. this completes NODE_UNDEF migration cleanup. Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -4078,19 +4078,6 @@ codegen_postexe(codegen_scope *s, node *tree, int val)
|
||||
codegen(s, tree, NOVAL);
|
||||
}
|
||||
|
||||
static void
|
||||
codegen_undef(codegen_scope *s, node *tree, int val)
|
||||
{
|
||||
node *t = tree;
|
||||
|
||||
while (t) {
|
||||
int symbol = new_sym(s, node_to_sym(t->car));
|
||||
genop_1(s, OP_UNDEF, symbol);
|
||||
t = t->cdr;
|
||||
}
|
||||
gen_load_nil(s, val);
|
||||
}
|
||||
|
||||
static void
|
||||
codegen_block_arg(codegen_scope *s, node *tree, int val)
|
||||
{
|
||||
@@ -5852,9 +5839,14 @@ static void
|
||||
gen_undef_var(codegen_scope *s, const node *varnode, int val)
|
||||
{
|
||||
struct mrb_ast_undef_node *undef = undef_node(varnode);
|
||||
node *t = undef->syms;
|
||||
|
||||
// The syms field now contains the list directly
|
||||
codegen_undef(s, undef->syms, val);
|
||||
while (t) {
|
||||
int symbol = new_sym(s, node_to_sym(t->car));
|
||||
genop_1(s, OP_UNDEF, symbol);
|
||||
t = t->cdr;
|
||||
}
|
||||
gen_load_nil(s, val);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -6332,11 +6324,6 @@ codegen(codegen_scope *s, node *tree, int val)
|
||||
codegen_negate(s, tree, val);
|
||||
break;
|
||||
|
||||
|
||||
case NODE_UNDEF:
|
||||
codegen_undef(s, tree, val);
|
||||
break;
|
||||
|
||||
case NODE_DEF:
|
||||
codegen_def(s, tree, val);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user