feat(naming): Phase 25.4-A NamingBox SSOT統一化完了
Task A: NamingBox SSOT化(static/global名前決定の一元化) ## 変更内容 ### 1. Builder側をNamingBoxに統一 - `src/mir/builder/decls.rs:46` - 手動string組み立て → `encode_static_method()`使用に変更 - "Main.main" → "Main.main/N" (arity付き正規形) ### 2. VM側の構造確認・ドキュメント強化 - `src/backend/mir_interpreter/handlers/calls/global.rs:145-149` - NamingBox SSOT原則をコメントで明示 - レガシーフォールバック廃止を明記 ## テスト結果 ✅ cargo test mir_static_box_naming: 2 passed ✅ cargo test stage1_cli_entry_ssa_smoke: 2 passed ## 技術的成果 - static box / global 呼び出しの名前決定を `src/mir/naming.rs` に一本化 - 手動文字列組み立て(`format!("{}.{}", box, method)`)を排除 - 正規化ルール(main→Main等)をNamingBox経由で統一 ## 参考 - Phase 25.4計画: docs/development/roadmap/phases/phase-25.4-naming-cli-cleanup/ - NamingBox SSOT: src/mir/naming.rs 🎉 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -42,7 +42,8 @@ impl super::MirBuilder {
|
||||
.as_deref()
|
||||
== Some("1")
|
||||
{
|
||||
let func_name = format!("{}.{}", box_name, "main");
|
||||
// NamingBox SSOT: Use encode_static_method for main/arity entry
|
||||
let func_name = crate::mir::naming::encode_static_method(&box_name, "main", params.len());
|
||||
eprintln!(
|
||||
"[DEBUG] build_static_main_box: Before lower_static_method_as_function"
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user