Skip to content

Commit 2573778

Browse files
ondrejmirtesclaude
andcommitted
Fix self-analysis and code style after definedness-holder changes
The definedness-holder changes added three `(string)` casts on array keys documented as strings - load-bearing under strict_types because numeric-string keys become ints at runtime. Suppress them inline like ScopeOps does instead of growing the baseline counts. Also sort the TryCatchHandler imports. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CGhnJQpUWRRpg6H5LuWJkA
1 parent 313bae4 commit 2573778

3 files changed

Lines changed: 4 additions & 4 deletions

File tree

‎src/Analyser/ExprHandler/AssignHandler.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2022,7 +2022,7 @@ private function processDefinednessForConditionalExpressionsAfterAssign(
20222022
$conditionalHolder = new ConditionalExpressionHolder([
20232023
'$' . $variableName => ExpressionTypeHolder::createYes(new Variable($variableName), $variableType),
20242024
], $holder);
2025-
$conditionalExpressions[(string) $exprString][$conditionalHolder->getKey()] = $conditionalHolder;
2025+
$conditionalExpressions[(string) $exprString][$conditionalHolder->getKey()] = $conditionalHolder; // @phpstan-ignore cast.useless
20262026
}
20272027

20282028
return $conditionalExpressions;

‎src/Analyser/MutatingScope.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4120,7 +4120,7 @@ public function applySpecifiedTypes(SpecifiedTypes $specifiedTypes): self
41204120
}
41214121
$scope = $scope->unsetExpression($expr);
41224122
foreach ($rescuedHolders as $targetExprString => $targetHolders) {
4123-
$scope = $scope->addConditionalExpressions((string) $targetExprString, $targetHolders);
4123+
$scope = $scope->addConditionalExpressions((string) $targetExprString, $targetHolders); // @phpstan-ignore cast.useless
41244124
}
41254125
$specifiedExpressions[$innerExprString] = new ExpressionTypeHolder($expr, new ErrorType(), TrinaryLogic::createNo());
41264126
}

‎src/Analyser/StmtHandler/TryCatchHandler.php‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
use Exception;
77
use PhpParser\Node;
88
use PhpParser\Node\Expr;
9+
use PhpParser\Node\Expr\Variable;
910
use PhpParser\Node\Stmt;
1011
use PhpParser\Node\Stmt\TryCatch;
11-
use PhpParser\Node\Expr\Variable;
1212
use PHPStan\Analyser\ConditionalExpressionHolder;
1313
use PHPStan\Analyser\ExpressionResultStorage;
1414
use PHPStan\Analyser\ExpressionTypeHolder;
@@ -395,7 +395,7 @@ private function addCatchVariableDefinednessConditionals(
395395
$conditionalHolder = new ConditionalExpressionHolder($condition, $holder);
396396
$conditionalHolders[$conditionalHolder->getKey()] = $conditionalHolder;
397397
}
398-
$mergedScope = $mergedScope->addConditionalExpressions((string) $exprString, $conditionalHolders);
398+
$mergedScope = $mergedScope->addConditionalExpressions((string) $exprString, $conditionalHolders); // @phpstan-ignore cast.useless
399399
}
400400

401401
return $mergedScope;

0 commit comments

Comments
 (0)