From d6e06788a9c26676d21f11a5ff4c61d28bb40766 Mon Sep 17 00:00:00 2001 From: pjh456 <147148383@qq.com> Date: Fri, 16 Oct 2026 15:03:55 +0000 Subject: [PATCH] =?UTF-8?q?style:=20=E8=87=AA=E5=8A=A8=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crates/oxide_emit/src/expr/identifier.rs | 7 ++++++- crates/oxide_emit/src/prepass/declare.rs | 5 +---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/crates/oxide_emit/src/expr/identifier.rs b/crates/oxide_emit/src/expr/identifier.rs index b0b77882..baa0087b 100644 --- a/crates/oxide_emit/src/expr/identifier.rs +++ b/crates/oxide_emit/src/expr/identifier.rs @@ -81,7 +81,12 @@ impl Emitter { { // 全局词法环境读:先查镜像(顶层 let/const 真源),未命中回退全局对象属性。 let key_idx = ctx.add_constant(Constant::String(name.to_string())); - ctx.inst(Inst::new(OpCode::LOAD_GLOBAL_LEX, Operand::Reg(r), Operand::Const(key_idx), Operand::None)); + ctx.inst(Inst::new( + OpCode::LOAD_GLOBAL_LEX, + Operand::Reg(r), + Operand::Const(key_idx), + Operand::None, + )); } else { ctx.inst(Inst::new(OpCode::LOAD_VAR, Operand::Reg(r), Operand::Reg(var_reg), Operand::None)); } diff --git a/crates/oxide_emit/src/prepass/declare.rs b/crates/oxide_emit/src/prepass/declare.rs index 4c686a95..225bd8e9 100644 --- a/crates/oxide_emit/src/prepass/declare.rs +++ b/crates/oxide_emit/src/prepass/declare.rs @@ -399,10 +399,7 @@ impl Emitter { // 落全局词法环境,预声明期先写 undefined 占位(无初始化器声明即终值; // 带初始化器声明由声明点写真实值覆盖)。eval 脚本顶层词法落自身声明 // 环境,不写镜像;块级词法(scope >0)不属全局词法环境,不写镜像。 - if ctx.is_global_scope - && !ctx.is_eval_script - && ctx.is_global_lexical_binding(bi.name.as_str()) - { + if ctx.is_global_scope && !ctx.is_eval_script && ctx.is_global_lexical_binding(bi.name.as_str()) { let key_idx = ctx.add_constant(Constant::String(bi.name.to_string())); let undef_reg = self.emit_undefined(ctx); ctx.inst(Inst::store_global_lex(Operand::Reg(undef_reg), key_idx));