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
@@ -124,8 +124,8 @@ fn object_define_property_rejects_mixed_descriptor() {
}
#[test]
fn object_define_property_non_writable_assignment_throws() {
let err = match eval("var o={}; Object.defineProperty(o,'x',{value:1}); o.x=2") {
fn object_define_property_non_writable_assignment_throws_in_strict() {
let err = match eval("var o={}; Object.defineProperty(o,'x',{value:1}); (function(){'use strict'; o.x=2})()") {
Ok(_) => panic!("expected assignment to fail"),
Err(err) => err,
};