pjh123
|
8a35dcd06e
|
deps/builtins: regress 启用 utf16 feature + 单元向匹配入口回归钉三则——vendor fork 的字节字面量优化 gate 已运行时化(逐编译 byte_literals 参数),全局启用 utf16 feature 不再关掉 str 路径的字节 pass 与执行器起始谓词快路径,str IR 编译与执行保持逐位不变;本侧纯加性:根 manifest 依赖增 utf16 feature(patch 注释补启用后果说明),新增三枚直走 regress API 的回归钉(孤立 surrogate 单元命中 GC=Surrogate 而代理对/普通字符不命中、代理对单元序列按单码点匹配 ≡ str 路径、well-formed 语料单元路径匹配 ≡ str 路径),为后续孤立 surrogate 消费面重构钉住单元入口契约
|
2026-09-13 19:40:48 +00:00 |
|
pjh123
|
29040d429d
|
deps/vm: vendor regress 0.11.1 补 Script/Script_Extensions 的 Unknown(Zzzz) 取值——上游表缺未分配码点集取值,规范合法模式 \p{Script=Unknown} 编译期 SyntaxError;fork 纯增量(0 行改动上游行,仅补区间表与解析臂),回归钉四则(未分配匹配/已分配不匹配/sc·scx·Zzzz 别名/既有取值不扰动)
|
2026-09-13 14:45:33 +00:00 |
|
pjh123
|
3169e8f2f9
|
perf: run 签名改 &Arc<CompiledModule>,顶层模块跨 run 共享——collect_flat_modules 顶层改 Arc::clone 消除逐 run 常量池深拷贝,全调用点 Arc 包装迁移
|
2026-09-11 22:19:13 +00:00 |
|
pjh123
|
0e32d663ce
|
fix: matchAll 空匹配推进至少一个字符,RegExp 补 GC 搬移深拷贝
matchAll 迭代器在空匹配(range.start == range.end)后把游标停在原位置,
同一位置反复空匹配导致死循环;改为按 UTF-8 字符边界推进(与 regress
find_iter 的 next_right_pos 一致),串尾空匹配把游标推到串长之后保证下轮
耗尽。
另修 RegExp 在 GC sweep 与 epoch 晋升中的指针别名:克隆只复制 native_fn 槽
的 Box 指针,源对象释放后克隆持悬垂指针,teardown 双重释放(heap 损坏)。
新增 clone_regexp_native 深拷贝已编译正则,sweep/promote 两处挂接,与
drop 配对保证单次释放。
|
2026-08-15 20:31:51 +08:00 |
|
pjh123
|
ddffa8504e
|
refactor: 字符串值改用 JsString 指针表示,键与字面量改用 PermInterner
|
2026-06-24 20:15:15 +08:00 |
|
pjh123
|
111c61d4d7
|
style: 自动格式化
|
2026-06-14 17:21:49 +08:00 |
|
pjh123
|
246ad72540
|
refactor: 拆分 Kernel 中可变 Session 与不可变 Core
|
2026-06-14 12:58:09 +08:00 |
|
pjh123
|
f77499e5cd
|
style: 减少自动格式化换行
|
2026-06-09 00:53:46 +08:00 |
|
pjh123
|
6cb781a3bd
|
fix: 修复数组长度与槽位索引截断问题
|
2026-06-08 22:55:52 +08:00 |
|
pjh123
|
10a92c7c8a
|
style: 自动格式化
|
2026-06-08 20:09:00 +08:00 |
|
pjh123
|
b8fbc93bca
|
feat: 支持 RegExpr 与 Symbol 部分方法
|
2026-06-08 10:36:39 +08:00 |
|