fix: sloppy 模式属性赋值静默 no-op——写失败按写方严格模式分派,内置写路径一律按严格

This commit is contained in:
2026-09-09 17:48:33 +08:00
parent 64f582d34b
commit c8bcff83f6
18 changed files with 529 additions and 89 deletions
+2 -2
View File
@@ -160,7 +160,7 @@ impl Vm {
let prop_val = self.ordinary_get(obj, prop_name_si, receiver)?;
let n = self.coerce_number_bounded(prop_val)?;
let new_val = JsValue::float(n + 1.0);
self.ordinary_set(obj, prop_name_si, new_val, receiver)?;
self.ordinary_set(obj, prop_name_si, new_val, receiver, self.current_strict())?;
self.regs[b] = new_val;
Ok(())
}
@@ -176,7 +176,7 @@ impl Vm {
let prop_val = self.ordinary_get(obj, prop_name_si, receiver)?;
let n = self.coerce_number_bounded(prop_val)?;
let new_val = JsValue::float(n - 1.0);
self.ordinary_set(obj, prop_name_si, new_val, receiver)?;
self.ordinary_set(obj, prop_name_si, new_val, receiver, self.current_strict())?;
self.regs[b] = new_val;
Ok(())
}