Repository navigation
Commit d189012
Root differing scope entries in every variable they spell
getDifferingVariableRoots() rooted a differing expression only in its
leading variable, so the two-pass template argument walk replayed a
statement assigning $key although $collection->get($key) differed: when
the observation pass never tracked the narrowing, the recorded delta had
nothing to invalidate and the stale narrowing survived the reassignment.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QSGnoYacTfJv3taAhZkj5o1 parent ab8d6ba commit d189012
5 files changed
Lines changed: 776 additions & 691 deletions
File tree
- src/Analyser
- tests/PHPStan/Analyser/nsrt
- turbo-ext
- src
- generated
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
| 139 | + | |
139 | 140 | | |
140 | 141 | | |
141 | 142 | | |
| |||
1542 | 1543 | | |
1543 | 1544 | | |
1544 | 1545 | | |
1545 | | - | |
1546 | | - | |
1547 | | - | |
1548 | | - | |
| 1546 | + | |
| 1547 | + | |
| 1548 | + | |
| 1549 | + | |
| 1550 | + | |
1549 | 1551 | | |
1550 | 1552 | | |
1551 | 1553 | | |
| |||
1565 | 1567 | | |
1566 | 1568 | | |
1567 | 1569 | | |
1568 | | - | |
1569 | | - | |
| 1570 | + | |
| 1571 | + | |
1570 | 1572 | | |
1571 | 1573 | | |
1572 | | - | |
| 1574 | + | |
| 1575 | + | |
| 1576 | + | |
1573 | 1577 | | |
1574 | 1578 | | |
1575 | 1579 | | |
1576 | 1580 | | |
1577 | 1581 | | |
1578 | | - | |
1579 | | - | |
| 1582 | + | |
| 1583 | + | |
1580 | 1584 | | |
1581 | 1585 | | |
1582 | | - | |
| 1586 | + | |
| 1587 | + | |
| 1588 | + | |
1583 | 1589 | | |
1584 | 1590 | | |
1585 | 1591 | | |
| |||
1591 | 1597 | | |
1592 | 1598 | | |
1593 | 1599 | | |
1594 | | - | |
1595 | | - | |
| 1600 | + | |
| 1601 | + | |
1596 | 1602 | | |
1597 | 1603 | | |
1598 | 1604 | | |
1599 | 1605 | | |
1600 | 1606 | | |
1601 | 1607 | | |
1602 | 1608 | | |
1603 | | - | |
| 1609 | + | |
| 1610 | + | |
| 1611 | + | |
1604 | 1612 | | |
1605 | 1613 | | |
1606 | 1614 | | |
1607 | 1615 | | |
1608 | 1616 | | |
1609 | 1617 | | |
1610 | | - | |
| 1618 | + | |
| 1619 | + | |
| 1620 | + | |
| 1621 | + | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
1611 | 1625 | | |
1612 | | - | |
| 1626 | + | |
1613 | 1627 | | |
1614 | 1628 | | |
1615 | 1629 | | |
| 1630 | + | |
| 1631 | + | |
1616 | 1632 | | |
1617 | 1633 | | |
1618 | 1634 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3085 | 3085 | | |
3086 | 3086 | | |
3087 | 3087 | | |
3088 | | - | |
| 3088 | + | |
3089 | 3089 | | |
3090 | 3090 | | |
3091 | 3091 | | |
| |||
3139 | 3139 | | |
3140 | 3140 | | |
3141 | 3141 | | |
3142 | | - | |
| 3142 | + | |
3143 | 3143 | | |
3144 | | - | |
3145 | | - | |
| 3144 | + | |
3146 | 3145 | | |
3147 | 3146 | | |
3148 | 3147 | | |
| |||
3163 | 3162 | | |
3164 | 3163 | | |
3165 | 3164 | | |
3166 | | - | |
3167 | 3165 | | |
3168 | 3166 | | |
3169 | 3167 | | |
| |||
3175 | 3173 | | |
3176 | 3174 | | |
3177 | 3175 | | |
3178 | | - | |
3179 | | - | |
3180 | | - | |
| 3176 | + | |
| 3177 | + | |
| 3178 | + | |
3181 | 3179 | | |
3182 | 3180 | | |
3183 | | - | |
| 3181 | + | |
3184 | 3182 | | |
3185 | | - | |
3186 | | - | |
3187 | | - | |
3188 | | - | |
3189 | | - | |
| 3183 | + | |
3190 | 3184 | | |
3191 | 3185 | | |
3192 | 3186 | | |
3193 | | - | |
3194 | | - | |
| 3187 | + | |
| 3188 | + | |
| 3189 | + | |
| 3190 | + | |
| 3191 | + | |
| 3192 | + | |
| 3193 | + | |
| 3194 | + | |
| 3195 | + | |
| 3196 | + | |
3195 | 3197 | | |
3196 | 3198 | | |
3197 | 3199 | | |
3198 | | - | |
3199 | | - | |
3200 | | - | |
3201 | | - | |
3202 | | - | |
3203 | | - | |
3204 | | - | |
3205 | | - | |
3206 | | - | |
3207 | | - | |
| 3200 | + | |
| 3201 | + | |
| 3202 | + | |
| 3203 | + | |
| 3204 | + | |
| 3205 | + | |
3208 | 3206 | | |
| 3207 | + | |
| 3208 | + | |
| 3209 | + | |
| 3210 | + | |
| 3211 | + | |
| 3212 | + | |
| 3213 | + | |
| 3214 | + | |
| 3215 | + | |
| 3216 | + | |
| 3217 | + | |
| 3218 | + | |
| 3219 | + | |
3209 | 3220 | | |
3210 | | - | |
| 3221 | + | |
3211 | 3222 | | |
3212 | 3223 | | |
3213 | 3224 | | |
| |||
0 commit comments