mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-25 19:21:11 +08:00
types/vm/runner: JsString 布局补 size_of/offset_of 编译期锚(实测 32B、utf16_len@24,tag 并入载荷首字无独立索引字),eval fn-decl 抛后描述符改显式值读钉住,non-definable-global-var 复测全绿撤 skip 条目
This commit is contained in:
@@ -205,11 +205,12 @@ fn eval_fn_decl_with_function_no_partial_binding_creation() {
|
||||
|
||||
#[test]
|
||||
fn eval_fn_decl_a_side_value_and_descriptor_preserved() {
|
||||
// 抛后 A 侧保留:Infinity 仍为原常量(自相等),描述符不可写位不变。
|
||||
// 抛后 A 侧保留:Infinity 属性值仍为原常量(显式值读),描述符不可写位不变。
|
||||
let s = eval_str(
|
||||
"try { eval('function Infinity(){}'); } catch (e) {} \
|
||||
(Infinity === Infinity) + ':' + \
|
||||
(Object.getOwnPropertyDescriptor(globalThis, 'Infinity').writable === false ? 'w-false' : 'w-true')",
|
||||
var d = Object.getOwnPropertyDescriptor(globalThis, 'Infinity'); \
|
||||
(d.value === Infinity) + ':' + \
|
||||
(d.writable === false ? 'w-false' : 'w-true')",
|
||||
);
|
||||
assert_eq!(s, "true:w-false");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user