- ✅ 最小再現ケース作成 - apps/tests/minimal_ssa_skip_ws.hako: 確実に再現する10-30行ケース - apps/tests/minimal_ssa_bug*.hako: 段階的簡略化版 - apps/tests/loopform_*.hako: LoopForm v2 各ケーステスト - ✅ Rustテストスイート追加 - src/tests/mir_loopform_conditional_reassign.rs: 4ケース(Case A/B/C/D) - src/tests/mir_loopform_complex.rs: 複雑なパターン - 全テストPASS確認済み - ✅ SSAバグ分析ドキュメント - docs/development/analysis/minimal_ssa_bug_analysis.md - エラー詳細・原因・ワークアラウンド記録 🎯 成果: SSAバグの構造を完全特定、デバッグ準備完了
30 lines
612 B
Plaintext
30 lines
612 B
Plaintext
static box Main {
|
|
main(args) {
|
|
local src = "using foo\nusing bar"
|
|
local n = src.length()
|
|
local i = 0
|
|
loop(i < n) {
|
|
local j = i
|
|
loop(j < n && src.substring(j, j+1) != "\n") { j = j + 1 }
|
|
local line = src.substring(i, j)
|
|
|
|
if line.length() > 0 {
|
|
local p = line
|
|
local idx = -1
|
|
local t = 0
|
|
loop(t < p.length()) {
|
|
if p.substring(t,t+1) == " " { idx = t }
|
|
t = t + 1
|
|
}
|
|
if idx >= 0 {
|
|
p = p.substring(0, idx)
|
|
}
|
|
print("Processed: " + p)
|
|
}
|
|
|
|
i = j + 1
|
|
}
|
|
return 0
|
|
}
|
|
}
|