- ✅ 最小再現ケース作成 - 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バグの構造を完全特定、デバッグ準備完了
21 lines
535 B
Plaintext
21 lines
535 B
Plaintext
// Minimal SSA Bug Reproduction
|
|
// Pattern: Conditional reassignment with immediate usage
|
|
// Expected: SSA violation "use of undefined value"
|
|
|
|
static box MinimalSSABug {
|
|
main(args) {
|
|
local x = "test"
|
|
|
|
// Problem pattern: reassign + immediate use in nested condition
|
|
if x.length() > 0 {
|
|
x = x.substring(0, 2) // reassign x
|
|
if x.length() > 0 && x.substring(0, 1) == "t" { // immediate use
|
|
x = x.substring(1, 2) // another reassign
|
|
print(x)
|
|
}
|
|
}
|
|
|
|
return 0
|
|
}
|
|
}
|