feat: 增加 CreateClosure 字节码,函数字面量每次执行创建新闭包

This commit is contained in:
爱特每羊队
2026-06-25 10:16:32 +08:00
parent 12f66ae675
commit 5007e7af7c
8 changed files with 29 additions and 13 deletions
@@ -77,8 +77,7 @@ impl Compiler {
let var_reg = ctx.lookup(&name)?;
ctx.reserve_reg(var_reg);
let const_idx = ctx.add_constant(Constant::BytecodeFunc(sub_idx));
ctx.emit_load_const(var_reg, const_idx);
ctx.emit_create_closure(var_reg, sub_idx);
ctx.emit(opcode::encode(OpCode::STORE_VAR, var_reg, var_reg, 0));
Ok(None)