refactor(phase27): Phase 27.4-A 後片付け完了

警告整理・テスト整合・ドキュメント改善を実施

変更内容:
1. LoopHeaderShape dead_code 警告対処
   - #[allow(dead_code)] 明示(Phase 27.4-C で使用予定)
   - struct と impl 両方に適用

2. 引数順序コメント微修正
   - skip_ws: 将来 to_loop_step_params() は [pinned..., carriers...] の順を明示
   - trim: 同様に設計意図と互換性維持の理由を明確化

3. 環境変数ヘルパー共通化
   - env_flag_is_1() 追加(JoinIR 実験フラグ統一用)

4. trim JoinIR テスト期待値修正
   - 関数数 2→3 に更新(trim_main + loop_step + skip_leading)
   - 既存実装との整合性確保

5. LoopHeaderShape テスト追加
   - loop_header_shape_params_order_is_pinned_then_carrier
   - pinned→carriers 順序の契約を固定(Phase 27.4-C+ の安全網)

テスト結果:
-  全 JoinIR テスト 7/7 PASS (前回 6/7 → 今回 7/7)
-  trim テスト修正により全テスト通過
-  LoopHeaderShape 警告解消
-  新規テスト追加で to_loop_step_params() 契約保証

コード品質向上:
- 警告削減(pinned/carriers/to_loop_step_params の unused 警告解消)
- 設計意図の明確化(コメント改善)
- 将来のリファクタリング安全性向上(テスト追加)
This commit is contained in:
nyash-codex
2025-11-23 09:45:19 +09:00
parent 8db5e59f6f
commit c7bd5a5465
2 changed files with 23 additions and 5 deletions

View File

@ -59,7 +59,7 @@ fn mir_joinir_funcscanner_trim_auto_lowering() {
eprintln!("{:#?}", join_module);
// Step 3: 妥当性検証
assert_eq!(join_module.functions.len(), 2, "Expected 2 functions (trim_main + loop_step)");
assert_eq!(join_module.functions.len(), 3, "Expected 3 functions (trim_main + loop_step + skip_leading)");
let trim_main_id = JoinFuncId::new(0);
let loop_step_id = JoinFuncId::new(1);