You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit b3f4336
Browse filesBrowse the repository at this point in the historyBrowse files
Preserve ArrayDimFetch expression tracking through loop generalization
When a parent expression is generalized during loop fixpoint iteration,
child ArrayDimFetch expressions are now preserved with a trackingOnly
flag instead of being removed. This prevents false positive
"nonexistent offset" errors on array dim fetches that were explicitly
assigned earlier in the same code path.
The trackingOnly flag decouples expression tracking (hasExpressionType
returns Yes, so the NonexistentOffsetInArrayDimFetchRule skips the
check) from type resolution (resolveType falls through to the
ExprHandler to compute the type fresh from the parent, avoiding stale
stored types).
Closesphpstan/phpstan#14598
0 commit comments