Commit fc6623f
Fix reference propagation to use chain tracking instead of boolean flag
The boolean propagateReferences=false approach blocks ALL intertwined
propagation in recursive calls, breaking nested foreach-by-reference
(e.g. bug-13676 where value→row→rows must chain).
Replace with intertwinedPropagatedFrom: a list of variable names already
visited in the current propagation chain. This prevents circular
back-propagation (A→B→A) while allowing legitimate chains (value→row→rows).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent e89130e commit fc6623f
1 file changed
Lines changed: 10 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2635 | 2635 | | |
2636 | 2636 | | |
2637 | 2637 | | |
2638 | | - | |
| 2638 | + | |
| 2639 | + | |
| 2640 | + | |
| 2641 | + | |
2639 | 2642 | | |
2640 | 2643 | | |
2641 | 2644 | | |
| |||
2647 | 2650 | | |
2648 | 2651 | | |
2649 | 2652 | | |
2650 | | - | |
2651 | | - | |
2652 | | - | |
2653 | | - | |
2654 | 2653 | | |
2655 | 2654 | | |
2656 | 2655 | | |
| |||
2668 | 2667 | | |
2669 | 2668 | | |
2670 | 2669 | | |
| 2670 | + | |
| 2671 | + | |
| 2672 | + | |
| 2673 | + | |
2671 | 2674 | | |
2672 | | - | |
| 2675 | + | |
2673 | 2676 | | |
2674 | 2677 | | |
2675 | 2678 | | |
2676 | | - | |
| 2679 | + | |
2677 | 2680 | | |
2678 | 2681 | | |
2679 | 2682 | | |
| |||
0 commit comments