Skip to content

Commit d4af0ff

Browse files
authored
[CodeQuality] Handle crash division by zero error on ForeachItemsAssignToEmptyArrayToAssignRector (#6743)
* [CodeQuality] Handle crash division by zero error on ForeachItemsAssignToEmptyArrayToAssignRector * use common ArithmeticError
1 parent 0d86656 commit d4af0ff

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php
2+
3+
namespace Rector\Tests\CodeQuality\Rector\Foreach_\ForeachItemsAssignToEmptyArrayToAssignRector\Fixture;
4+
5+
class SkipDivisionByZero
6+
{
7+
function run($mode)
8+
{
9+
$x = 1 / 0;
10+
}
11+
}

src/PhpParser/Node/Value/ValueResolver.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace Rector\PhpParser\Node\Value;
66

7+
use ArithmeticError;
78
use PhpParser\ConstExprEvaluationException;
89
use PhpParser\ConstExprEvaluator;
910
use PhpParser\Node\Arg;
@@ -157,7 +158,7 @@ private function resolveExprValueForConst(Expr|InterpolatedStringPart $expr): mi
157158
try {
158159
$constExprEvaluator = $this->getConstExprEvaluator();
159160
return $constExprEvaluator->evaluateDirectly($expr);
160-
} catch (ConstExprEvaluationException|TypeError) {
161+
} catch (ConstExprEvaluationException|TypeError|ArithmeticError) {
161162
}
162163

163164
if ($expr instanceof Class_) {

0 commit comments

Comments
 (0)