feat(joinir): Phase 41-4.1 Add NestedIfMerge JoinInst variant
Add structural support for nested if patterns with PHI-sensitive variables: 1. JoinInst::NestedIfMerge in mod.rs - conds: Vec<VarId> (outer to inner conditions) - merges: Vec<MergePair> (variable updates at deepest level) - k_next: Option<JoinContId> (continuation after merge) 2. JSON serialization in json.rs - Type: "nested_if_merge" - Fields: conds[], merges[], k_next 3. Runner/Bridge stubs - JoinIR Runner: Returns error (use VM Bridge instead) - VM Bridge: panic placeholder (41-4.3 will implement) Target: ParserControlBox.parse_loop() (4-level nested if) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -190,6 +190,14 @@ fn execute_function(
|
||||
"MethodCall is not supported in JoinIR Runner (use JoinIR→MIR→VM bridge instead)"
|
||||
));
|
||||
}
|
||||
// Phase 41-4: NestedIfMerge instruction execution
|
||||
JoinInst::NestedIfMerge { .. } => {
|
||||
// Phase 41-4: NestedIfMerge は JoinIR Runner では未対応
|
||||
// JoinIR → MIR 変換経由で VM が実行する
|
||||
return Err(JoinRuntimeError::new(
|
||||
"NestedIfMerge is not supported in JoinIR Runner (use JoinIR→MIR→VM bridge instead)"
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user