fix(aot): Phase 25 MVP - numeric_core transformation完全動作
2つの重大バグを修正してBoxCall→Call変換を実現:
1. nyash.toml: numeric_coreモジュールマッピング追加
- selfhost.llvm.ir.aot_prep.passes.numeric_core パスが解決できなかった
- 224行目に追加してusing解決を修正
2. numeric_core.hako: JSONパース処理の根本修正
- 問題: text.indexOf("{") が全JSONのルート{を検出
- 結果: 全体が1命令として扱われ型検出が完全に破綻
- 修正: op-marker-first パターンに変更
- "op":"..." を先に検出
- lastIndexOf("{") で命令開始を特定
- 各命令を個別に正しく処理
成果:
- 型テーブルサイズ: 1 → 3 (MatI64インスタンス完全検出)
- 変換: BoxCall(MatI64, "mul_naive") → Call("NyNumericMatI64.mul_naive")
- 検証: 全テストパス(単体・E2E・変換・残骸確認)✅
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
11
CLAUDE.md
11
CLAUDE.md
@ -4,7 +4,16 @@
|
||||
|
||||
---
|
||||
|
||||
## 🔄 **現在の開発状況** (2025-09-28)
|
||||
## 🔄 **現在の開発状況** (2025-11-15)
|
||||
|
||||
### 🎉 **Phase 25 MVP 完全成功!** (2025-11-15)
|
||||
- **numeric_core BoxCall→Call変換** 完全動作!
|
||||
- **2つの重大バグ修正**:
|
||||
1. nyash.toml モジュールマッピング欠落(224行目追加)
|
||||
2. numeric_core.hako JSONパース処理のバグ(全JSON→個別命令処理に修正)
|
||||
- **型検出システム正常動作**: 型テーブルサイズ 1→3、MatI64インスタンス完全検出
|
||||
- **変換例**: `BoxCall(MatI64, "mul_naive")` → `Call("NyNumericMatI64.mul_naive")`
|
||||
- **検証**: 全テストパス(単体・E2E・変換確認・残骸確認)✅
|
||||
|
||||
### 🎯 **Phase 15: セルフホスティング実行器統一化**
|
||||
- **Rust VM + LLVM 2本柱体制**で開発中
|
||||
|
||||
Reference in New Issue
Block a user