爱特每羊队
ad547d5cd8
feat: Temporal.Duration.prototype.add(分量精确求和+按最大单位平衡+范围校验,绑定注册);add 子集 32/0
2026-08-12 14:50:13 +08:00
爱特每羊队
fe79eff172
fix: Temporal 构造器补 length 自有属性(Instant/ZonedDateTime/PlainDate/PlainTime/Duration 按规范 arity)
2026-08-12 14:37:31 +08:00
爱特每羊队
0cd98084da
feat: Temporal.PlainDateTime.prototype.equals(实例/字符串/对象/ZDT 统一比较,绑定注册)
2026-08-12 14:27:25 +08:00
爱特每羊队
1a4663dcab
fix: class 方法/访问器/constructor/prototype 属性描述符(非枚举/只读),新增 DEFINE_PROP_ATTRS/DEFINE_ACCESSOR_ATTRS
...
- opcode.rs/inst.rs/contract.rs/vm.rs/vm_dispatch_ctrl.rs:新增两个带 attrs 扩展字的 define 指令
(attrs bit0=writable, bit1=enumerable, bit2=configurable,与 PropAttributes 一致)
- class/method.rs:方法与非计算访问器改按规范非枚举安装(DefineMethod 语义)
- class/prototype.rs:proto.constructor 非枚举;ctor.prototype 三标志全 false(MakeConstructor)
- 效果:language/statements/class 1782 pass/948 fail -> 1910 pass/716 fail(+128/-232)
2026-08-12 14:11:02 +08:00
爱特每羊队
cc78e6b28f
fix: ArraySetLength 收缩遇不可配置元素静默失败、ToPrimitive 异常透传与既有属性描述符缺省回填
...
- arr.length 收缩时若 [newLen, oldLen) 内存在不可配置元素,整个收缩失败且不做任何修改(sloppy 赋值静默 no-op),不再抛错或截断
- length 赋值 ToPrimitive(valueOf/toString)抛错时按主 dispatch 约定直接返回,避免二次抛 RangeError 覆盖原异常(S15.4.5.1_A1.3_T2)
- Object.defineProperty/defineProperties/create 对已有属性省略描述符字段时保持现有属性值(无显式 meta 按 DEFAULT_DATA 回填),修复 toReversed/toSorted/toSpliced/with length-decreased-while-iterating
2026-08-12 13:07:32 +08:00
爱特每羊队
dc023b2637
fix: 数组 length 赋值 ArraySetLength 语义与超长逻辑长度(a.length 读取/收缩校验/空洞同步)
2026-08-12 12:52:02 +08:00
爱特每羊队
3e61b573db
feat: 新增 Symbol.species well-known symbol 绑定(Symbol.species 解析/键槽/内建对象)
2026-08-12 12:50:53 +08:00
爱特每羊队
291250f3e6
feat: BigInt bitwise operators with ToNumeric semantics
2026-08-12 11:27:50 +08:00
爱特每羊队
ee9a9e12b8
fix: object-to-primitive conversion errors propagate through native builtins
2026-08-12 11:27:40 +08:00
爱特每羊队
c4fda0f883
engine: ToPropertyKey via ToPrimitive, Symbol keys/description, catchable conversion errors
2026-08-12 09:59:56 +08:00
爱特每羊队
18eb6ef8ab
feat: add Array entries/keys/findLastIndex/toSorted/toReversed/toSpliced/with
2026-08-12 03:42:42 +08:00
爱特每羊队
998327aa7e
feat: BigInt.prototype[Symbol.toStringTag] = "BigInt"
...
Adds the well-known @@toStringTag data property (writable:false,
enumerable:false, configurable:true) so Object.prototype.toString and
property descriptors match the spec. Remaining built-ins/BigInt failure
(Symbol.toStringTag.js verifyProperty) is blocked on String(Symbol)
support in the Symbol track.
2026-08-12 03:41:22 +08:00
爱特每羊队
b844505ec7
fix: BigInt SUB/MUL with 0n no longer raise Division by zero
...
binary_arith! applied an unconditional is_zero() guard, so x - 0n and
x * 0n (and wrapped-object variants) incorrectly threw RangeError.
Only DIV/MOD legitimately reject BigInt zero divisors; SUB/MUL must
compute normally. test262 language/expressions/subtraction:
29/6 -> 30/5 (bigint-arithmetic now passes).
2026-08-12 03:30:03 +08:00
爱特每羊队
f3c37911f7
feat: arbitrary-precision BigInt via num-bigint (literals, arithmetic, toString, asIntN/asUintN)
2026-08-12 03:15:18 +08:00
爱特每羊队
ca293a57e9
fix: Object.prototype.toString tags for Math/JSON/Arguments
2026-08-12 02:29:40 +08:00
爱特每羊队
28477a3e47
feat: BigInt constructor ToPrimitive semantics, toString(radix), asIntN/asUintN; ctor [[Prototype]]=Function.prototype
2026-08-12 02:23:27 +08:00
爱特每羊队
6afeaafb54
feat: implement PlainDateTime until/since with spec rounding semantics
2026-08-12 01:18:34 +08:00
爱特每羊队
ed8c76c60f
feat: implement PlainDateTime add/subtract arithmetic
2026-08-11 23:14:42 +08:00
爱特每羊队
d1d85ffe4f
feat: implement PlainDateTime toString options and ISO range parsing
2026-08-11 23:07:41 +08:00
爱特每羊队
ed90ebd4e4
feat: implement Temporal PlainDateTime conversion and serialization
2026-08-11 22:29:00 +08:00
爱特每羊队
e6627b02f1
feat: implement Temporal PlainDateTime foundation
2026-08-11 21:32:15 +08:00
爱特每羊队
5ec0dc2b7d
feat: implement Temporal Instant zoned conversion
2026-08-11 20:54:25 +08:00
爱特每羊队
a9e194f2c6
feat: implement Temporal Instant serialization
2026-08-11 19:14:24 +08:00
爱特每羊队
6b00eaaf06
feat: implement Temporal Instant differences
2026-08-11 18:22:21 +08:00
爱特每羊队
67c6d3a53a
fix: preserve high template expression registers
2026-08-11 17:17:30 +08:00
爱特每羊队
e049a8df5d
feat: implement Temporal Instant round
2026-08-11 16:57:53 +08:00
爱特每羊队
3839e18c0f
fix: capture destructured function parameters
2026-08-11 16:57:13 +08:00
爱特每羊队
756d6b8e1b
feat: implement precise Temporal Instant arithmetic
2026-08-11 15:55:05 +08:00
爱特每羊队
4c42112c51
feat: implement precise Temporal Instant factories
2026-08-11 15:21:28 +08:00
爱特每羊队
ec2efa7b6b
fix: capture object keys and scope loop bindings
2026-08-11 14:17:45 +08:00
爱特每羊队
925ca358e9
fix: validate Temporal duration inputs
2026-08-11 13:11:51 +08:00
爱特每羊队
d7a63a0d54
feat: implement Temporal duration and plain date differences
2026-08-11 12:38:31 +08:00
爱特每羊队
51da7ed3d9
feat: 新增 DEFINE_ACCESSOR_DYNAMIC opcode 支持计算键对象访问器
2026-08-10 23:28:18 +08:00
爱特每羊队
7e3d7b43b5
feat: 实现最小 BigInt 子集(字面量/算术/比较/构造器,Temporal 前置)
2026-08-10 23:02:31 +08:00
爱特每羊队
46b60ff003
feat: Temporal 解锁 + PlainDate 补齐日期派生字段与 add/subtract/equals/compare
2026-08-10 21:23:00 +08:00
爱特每羊队
717e927057
fix: 异常兜底路径经 create_from_text 恢复错误类型(不塌缩普通 Error)
2026-08-10 20:19:51 +08:00
爱特每羊队
069e8920c4
fix: await 经 promise_resolve 按 constructor 查询包装被等待值
2026-08-10 20:00:52 +08:00
爱特每羊队
1765d567a1
feat: Temporal 最小子集(Temporal.Now/Instant/PlainDate/PlainTime)
2026-08-10 18:18:39 +08:00
爱特每羊队
61898f8983
perf: 字符串拼接按操作数字节长预分配容量,免几何 realloc 二次拷贝
2026-08-10 17:40:39 +08:00
爱特每羊队
b70e334bce
perf: dispatch 主循环 hoist max_steps,免逐指令 config 指针追寻
2026-08-10 17:23:29 +08:00
爱特每羊队
c90c610e15
perf: 子模块树改 Arc 共享,run() 免深拷贝模块树
2026-08-10 17:23:29 +08:00
爱特每羊队
cd96fa6fcb
perf: JsString 缓存 UTF-16 length,字符串 length 访问改 O(1)
2026-08-10 17:23:29 +08:00
爱特每羊队
f284f74cb1
perf: 数组元素独立存储区,push 改为摊销 O(1) 尾插
2026-08-10 16:01:09 +08:00
爱特每羊队
eaf4825e4f
perf: 函数调用 bytecode 改 Arc 共享(O(1) 帧切换 + IC 写时复制)
2026-08-10 15:08:51 +08:00
爱特每羊队
dce613959f
perf: 删除 IC 命中热路径无条件 eprintln 调试残留
2026-08-10 14:30:38 +08:00
爱特每羊队
bc6ec10aef
refactor: 移除 SuspendedFrame 已无必要的 dead_code 豁免
2026-08-10 14:28:09 +08:00
爱特每羊队
cc21c20a53
refactor: save/restore 收敛为字段表宏单一登记,补齐 accessor_frame_target_reg
2026-08-10 14:18:58 +08:00
爱特每羊队
3947c5db85
refactor: VM 统一 GC 遍历 for_each_value/rewrite_values(双子清单收敛三处手写清单)
2026-08-10 13:57:13 +08:00
爱特每羊队
b808261135
refactor: AsyncGeneratorState 收敛到 SuspendedFrame(save/restore/GC 遍历/string 边/深拷贝)
2026-08-10 13:49:05 +08:00
爱特每羊队
ba265eb545
refactor: AsyncState 收敛到 SuspendedFrame(save/restore/GC 遍历/string 边/深拷贝)
2026-08-10 13:36:34 +08:00