pjh123
|
63d549aec2
|
fix: string.search 无参调用越界 panic,参数读取守卫前置返回 -1
|
2026-08-15 04:28:01 +08:00 |
|
pjh123
|
179eab6cc6
|
fix: property_key_si 对象与兜底原始值键统一走字符串键规范化
对象经 ToPrimitive 转字符串后直接 intern 绕过 canonical_index_of,产生
与整数键区间分裂的字符串键(o[{toString(){return "5"}}] 与 o[5] 不同
键);bigint 等兜底原始值键同病。统一经 string_key_si 规范化:规范数字
串映射整数键,其余 intern,与字符串分支及 03.1 各建键入口口径一致。
补回归:对象 ToPropertyKey 数字串键与 o[5]/o["5"] 键等价(读写双向)、
o[5n] 与 o[5]/o["5"] 键等价。
|
2026-08-15 04:20:26 +08:00 |
|
pjh123
|
dc98074d79
|
fix: 对象建键入口统一走 property_key_si 规范化,数字键不再分裂
Object.fromEntries/JSON.parse/new Map 对象 entry/rest 解构静态 excluded
四处直接 intern 动态字符串键绕过整数键区间映射,规范数字键分裂为
字符串键与整数键两个键。统一经 string_key_si 规范化:规范数字串映射
整数键,其余 intern 字符串键,与 property_key_si 字符串分支口径一致。
make_int_key 增加 debug 断言兜底索引越界。
|
2026-08-14 22:37:46 +08:00 |
|
pjh123
|
36c1ef1208
|
fix: replaceAll 类正则对象统一走 ToString 文本路径与 replace 对齐
|
2026-08-14 21:15:00 +08:00 |
|
pjh123
|
6c6d4320a6
|
perf: replace 函数 replacer 回调免每匹配整串复制
回调第 4 参(原字符串)由每匹配复制整串改为调用方预构一次:
原始字符串 receiver 直接复用原值零拷贝,对象 receiver 提升为单次会话串。
覆盖 String.prototype.replace/replaceAll 与 RegExp.prototype[Symbol.replace]
的函数 replacer 路径。补回调第 4 参断言测试与 fn-replacer 压测。
|
2026-08-14 21:00:43 +08:00 |
|
pjh123
|
91103851c8
|
perf: replace 字符串 pattern 走共享借用零拷贝并修 replace 语义
|
2026-08-14 12:54:27 +08:00 |
|
pjh123
|
1c5676e614
|
perf: ASCII 单字符缓存 + 字符串迭代器游标收尾
|
2026-08-14 12:11:54 +08:00 |
|
pjh123
|
5061ad7a44
|
fix: 计算成员复合赋值保规范求值序
|
2026-08-14 11:41:50 +08:00 |
|
pjh123
|
fbd568e814
|
fix: split 分隔符为 RegExp 子类对象时按字符串语义切分
|
2026-08-14 10:44:23 +08:00 |
|
pjh123
|
6a39bccc94
|
perf: 常量字符串键计算成员折叠走 IC 静态路径
|
2026-08-14 10:20:32 +08:00 |
|
pjh123
|
33db6dad9c
|
test: 数值断言容忍 int 表示,类私有字段 for-in 用例补公有字段
|
2026-08-14 06:14:38 +08:00 |
|
pjh123
|
7362137720
|
chore: 清理 oxide_vm clippy 告警
|
2026-08-14 05:26:46 +08:00 |
|
pjh123
|
0d9004f8e2
|
perf: 对象字面量批量构造键序预建 shape
|
2026-08-14 04:47:15 +08:00 |
|
pjh123
|
cd9132fb14
|
perf: 数组迭代方法元素读取走密集直读快路径
|
2026-08-13 18:12:49 +08:00 |
|
pjh123
|
b7e9d18220
|
perf: 收紧字符串借用语义消除跨分配点 UB
|
2026-08-13 16:24:00 +08:00 |
|
pjh123
|
af61dcf6fc
|
feat: ToPropertyKey 改走 ToPrimitive,Symbol 键与描述符,转换错误可捕获
|
2026-08-12 09:59:56 +08:00 |
|
pjh123
|
47733ae224
|
feat: PlainDateTime add/subtract 算术
|
2026-08-11 23:14:42 +08:00 |
|
pjh123
|
fbb3500129
|
feat: PlainDateTime toString 选项与 ISO 区间解析
|
2026-08-11 23:07:41 +08:00 |
|
pjh123
|
3cf2c792ba
|
feat: Temporal PlainDateTime 转换与序列化
|
2026-08-11 22:29:00 +08:00 |
|
pjh123
|
66712e05a5
|
feat: Temporal PlainDateTime 基础实现
|
2026-08-11 21:32:15 +08:00 |
|
pjh123
|
90a162d39a
|
feat: Temporal Instant 时区转换
|
2026-08-11 20:54:25 +08:00 |
|
pjh123
|
b982e964a7
|
feat: Temporal Instant 序列化
|
2026-08-11 19:14:24 +08:00 |
|
pjh123
|
59da42fea9
|
feat: Temporal Instant 差值实现
|
2026-08-11 18:22:21 +08:00 |
|
pjh123
|
e6d70664d3
|
fix: 模板表达式高位寄存器槽保留
|
2026-08-11 17:17:30 +08:00 |
|
pjh123
|
7ccedfb0b1
|
feat: Temporal Instant round 实现
|
2026-08-11 16:57:53 +08:00 |
|
pjh123
|
1d45a34973
|
fix: 闭包捕获解构函数参数
|
2026-08-11 16:57:13 +08:00 |
|
pjh123
|
abc794709e
|
feat: Temporal Instant 算术精确实现
|
2026-08-11 15:55:05 +08:00 |
|
pjh123
|
930bfa1ac9
|
feat: Temporal Instant 工厂精确实现
|
2026-08-11 15:21:28 +08:00 |
|
pjh123
|
33dae0a8c2
|
fix: 闭包捕获对象键与循环变量绑定
|
2026-08-11 14:17:45 +08:00 |
|
pjh123
|
0d75e901ff
|
fix: Temporal 时长输入校验
|
2026-08-11 13:11:51 +08:00 |
|
pjh123
|
b9686e000d
|
feat: Temporal 时长差值与纯日期差值
|
2026-08-11 12:38:31 +08:00 |
|
pjh123
|
924b8fd4e0
|
feat: Temporal 最小子集(Temporal.Now/Instant/PlainDate/PlainTime)
|
2026-08-10 18:18:39 +08:00 |
|
pjh123
|
020989a348
|
refactor: 清理 dead abstraction(oxide_api 空壳/空钩子/PersistentHeap/空目录)
|
2026-08-10 11:54:44 +08:00 |
|
pjh123
|
6a58f89e11
|
fix: async-gen 被拒 yield 排队 next 得 done(unwrap 前 AwaitSuspended)
|
2026-08-10 11:30:30 +08:00 |
|
pjh123
|
9f6f694be9
|
fix: 私有字段 brand 检查 own 槽(字段不跨原型,规避 cell 值缺陷)
|
2026-08-10 11:23:52 +08:00 |
|
pjh123
|
67d7912089
|
fix: Promise thenable alreadyResolved(委托代理闭包结算)
|
2026-08-10 10:28:32 +08:00 |
|
pjh123
|
80cb1c2feb
|
feat: 循环 let/const 每迭代绑定(MAKE_CELL_FRESH + 解构捕获修复)
|
2026-08-10 10:18:39 +08:00 |
|
pjh123
|
e03ec0f635
|
fix: 脚本顶层 var/function 声明落 globalThis(DEFINE_GLOBAL_PROP 非可配置数据属性)
|
2026-08-10 03:52:17 +08:00 |
|
pjh123
|
85c192a747
|
feat: rest 参数(function f(...args)),实参区收集数组
|
2026-08-10 00:33:25 +08:00 |
|
pjh123
|
fd47cd56d0
|
feat: async/await 语法支持(AWAIT 帧快照挂起/恢复 + 微任务驱动 + AsyncFunction intrinsics)
|
2026-08-09 22:02:15 +08:00 |
|
pjh123
|
538a5670dc
|
feat: Promise 基础子系统 + 微任务队列(resolve/reject/then/catch/finally + run() drain)
|
2026-08-09 21:08:53 +08:00 |
|
pjh123
|
464712f7ba
|
feat: 实现 yield* 委托语法(内层迭代器 next/return/throw 转发)
|
2026-08-09 20:00:16 +08:00 |
|
pjh123
|
cd1bc206a5
|
fix: symbol 作属性键独立编码,不再塌缩为空串
|
2026-08-09 16:09:49 +08:00 |
|
pjh123
|
c8740bfb49
|
feat: 函数 length 属性(字节码函数/bind 包装器)+ getter/setter name 前缀
|
2026-08-09 15:38:45 +08:00 |
|
pjh123
|
2bebd822d0
|
feat: TypedArray 第一批解锁(%TypedArray% 构造器、原型访问器、of/from、bind 绑参、harness)
|
2026-08-09 12:26:31 +08:00 |
|
pjh123
|
6c79dbb21c
|
feat: class 私有成员语义(字段/方法/访问器 + brand 检查 + 契约修复)
|
2026-08-09 11:08:36 +08:00 |
|
pjh123
|
8669f55470
|
feat: class 公有字段 define 语义 + computed key 类定义期求值一次
|
2026-08-09 09:35:24 +08:00 |
|
pjh123
|
a0c271ef3c
|
fix: try 内 return 泄漏 TryHandler,异常跳回死函数 catch 死循环
|
2026-08-09 07:41:34 +08:00 |
|
pjh123
|
5611d90ad0
|
feat: with 语句、成员位/移位复合赋值、CALL_NATIVE 无目标修复
with 语句:新增 emit 支持,with 体内自由标识符动态解析(对象属性优先,
回退外层),支持读/写/复合赋值/自增自减/delete/var 初始化动态化,
TO_OBJECT opcode 处理原始值对象,顶层 this 绑定全局对象。
复合赋值:新增 6 个 COMPOUND_MEMBER_BIT_* opcode 支持成员位/移位复合赋值,
修复 computed member 复合赋值覆盖 bug,with 内标识符复合赋值动态化。
CALL_NATIVE:实现全局 isNaN/isFinite 并绑定,用户覆盖 builtin 名时
回退通用调用路径而非报错,局部遮蔽 builtin 名走普通 CALL。
test262: with 34 pass(基线 0),compound-assignment 320 pass(基线 223)
|
2026-08-09 07:22:46 +08:00 |
|
pjh123
|
9e3be30fe8
|
fix: TypedArray 元素写入进 buffer + BYTES_PER_ELEMENT 属性
|
2026-08-08 21:41:33 +08:00 |
|