Skip to content

Fix phpstan/phpstan#4560: Unexpected array shape error #26553

Fix phpstan/phpstan#4560: Unexpected array shape error

Fix phpstan/phpstan#4560: Unexpected array shape error #26553

Triggered via pull request March 9, 2026 16:28
Status Failure
Total duration 16m 27s
Artifacts

tests.yml

on: pull_request
Matrix: Tests PHPUnit 12.x
Determine levels tests matrix
50s
Determine levels tests matrix
Matrix: Integration tests
Matrix: Tests PHPUnit 11.x
Matrix: Tests with old PHPUnit
Matrix: Mutation Testing
Matrix: Levels tests
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 4 warnings
Tests PHPUnit 11.x (8.2, ubuntu-latest)
Process completed with exit code 2.
Tests with old PHPUnit (8.0, ubuntu-latest)
Process completed with exit code 2.
Tests with old PHPUnit (8.1, ubuntu-latest)
Process completed with exit code 2.
Tests with old PHPUnit (7.4, ubuntu-latest)
Process completed with exit code 2.
Tests PHPUnit 11.x (8.2, windows-latest)
Process completed with exit code 1.
Tests with old PHPUnit (7.4, windows-latest)
Process completed with exit code 1.
Tests with old PHPUnit (8.0, windows-latest)
Process completed with exit code 1.
Tests with old PHPUnit (8.1, windows-latest)
Process completed with exit code 1.
Mutation Testing (8.4, ubuntu-latest)
Process completed with exit code 1.
Mutation Testing (8.3, ubuntu-latest)
Process completed with exit code 1.
Mutation Testing (8.4, ubuntu-latest): src/Analyser/MutatingScope.php#L3096
Escaped Mutant for Mutator "PHPStan\Infection\TrinaryLogicMutator": @@ @@ if ($this->getNodeKey($holderExpr->var) !== $exprKey) { continue; } - if (!$holder->getCertainty()->yes()) { + if ($holder->getCertainty()->no()) { continue; } $dimType = $scope->getType($holderExpr->dim)->toArrayKey();
Mutation Testing (8.4, ubuntu-latest): src/Analyser/MutatingScope.php#L3086
Escaped Mutant for Mutator "PHPStan\Infection\TrinaryLogicMutator": @@ @@ ); } - if ($originalExprType instanceof MixedType && $newType->isArray()->yes()) { + if ($originalExprType instanceof MixedType && !$newType->isArray()->no()) { $exprKey = $this->getNodeKey($expr); foreach ($this->expressionTypes as $holder) { $holderExpr = $holder->getExpr();
Mutation Testing (8.3, ubuntu-latest): src/Analyser/MutatingScope.php#L3096
Escaped Mutant for Mutator "PHPStan\Infection\TrinaryLogicMutator": @@ @@ if ($this->getNodeKey($holderExpr->var) !== $exprKey) { continue; } - if (!$holder->getCertainty()->yes()) { + if ($holder->getCertainty()->no()) { continue; } $dimType = $scope->getType($holderExpr->dim)->toArrayKey();
Mutation Testing (8.3, ubuntu-latest): src/Analyser/MutatingScope.php#L3086
Escaped Mutant for Mutator "PHPStan\Infection\TrinaryLogicMutator": @@ @@ ); } - if ($originalExprType instanceof MixedType && $newType->isArray()->yes()) { + if ($originalExprType instanceof MixedType && !$newType->isArray()->no()) { $exprKey = $this->getNodeKey($expr); foreach ($this->expressionTypes as $holder) { $holderExpr = $holder->getExpr();