-
-
Notifications
You must be signed in to change notification settings - Fork 946
Closed
Description
Bug report
On analyzing our code base PHPStan throws an internal error since 0.12.55.
Execute with ./vendor/bin/phpstan analyse --debug -vvv using PHP-7.4.12 with Zend OPcache v7.4.12
phpstan.neon.dist:
parameters:
tmpDir: ./.phpstan-tmp
paths:
- ./module
- ./lib/DcmnClient/src
- ./lib/FraunhoferClient/src
- ./public
- ./bin
level: max
inferPrivatePropertyTypeFromConstructor: true
checkMissingIterableValueType: false
ignoreErrors:
- '#Call to an undefined method Laminas\\InputFilter\\InputFilterInterface\|Laminas\\InputFilter\\InputInterface::[a-zA-Z]+\(\)#'
- '#Call to an undefined method Assert\\AssertionChain::[a-zA-Z0-9]+\(\)#'
Error:
...
/app/module/ApiCampaign/src/SpotScheduleController.php
Fatal error: Uncaught TypeError: Argument 1 passed to _HumbugBox9db2e91495d9\Nette\Utils\Strings::matchAll() must be of the type string, int given, called in phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/MutatingScope.php on line 1822 and defined in phar:///app/vendor/phpstan/phpstan/phpstan/vendor/nette/utils/src/Utils/Strings.php:409
Stack trace:
#0 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/MutatingScope.php(1822): _HumbugBox9db2e91495d9\Nette\Utils\Strings::matchAll(-1, '#^\\$([a-zA-Z_\\x...')
#1 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(1712): PHPStan\Analyser\MutatingScope->enterAnonymousFunction(Object(PhpParser\Node\Expr\Closure), Array)
#2 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(1863): PHPStan\Analyser\NodeScopeResolver->processClosureNode(Object(PhpParser\Node\Expr\Closure), Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext), Object(PHPStan\Type\CallableType))
#3 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(1165): PHPStan\Analyser\NodeScopeResolver->processArgs(Object(PHPStan\Reflection\Native\NativeFunctionReflection), Object(PHPStan\Reflection\Generic\ResolvedFunctionVariant), Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#4 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(1865): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Expr\FuncCall), Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#5 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(1268): PHPStan\Analyser\NodeScopeResolver->processArgs(Object(PHPStan\Reflection\ObjectTypeMethodReflection), Object(PHPStan\Reflection\Generic\ResolvedFunctionVariant), Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#6 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(395): PHPStan\Analyser\NodeScopeResolver->processExprNode(Object(PhpParser\Node\Expr\MethodCall), Object(PHPStan\Analyser\MutatingScope), Object(Closure), Object(PHPStan\Analyser\ExpressionContext))
#7 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(232): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Expression), Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#8 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(365): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\ClassMethod), Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#9 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(232): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\ClassMethod), Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer))
#10 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(437): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Class_), Array, Object(PHPStan\Analyser\MutatingScope), Object(PHPStan\Node\ClassStatementsGatherer))
#11 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(232): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Class_), Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#12 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(406): PHPStan\Analyser\NodeScopeResolver->processStmtNodes(Object(PhpParser\Node\Stmt\Namespace_), Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#13 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/NodeScopeResolver.php(201): PHPStan\Analyser\NodeScopeResolver->processStmtNode(Object(PhpParser\Node\Stmt\Namespace_), Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#14 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/FileAnalyser.php(148): PHPStan\Analyser\NodeScopeResolver->processNodes(Array, Object(PHPStan\Analyser\MutatingScope), Object(Closure))
#15 phar:///app/vendor/phpstan/phpstan/phpstan/src/Analyser/Analyser.php(52): PHPStan\Analyser\FileAnalyser->analyseFile('/app/module/Api...', Array, Object(PHPStan\Rules\Registry), NULL)
#16 phar:///app/vendor/phpstan/phpstan/phpstan/src/Command/AnalyserRunner.php(57): PHPStan\Analyser\Analyser->analyse(Array, Object(Closure), Object(Closure), true, Array)
#17 phar:///app/vendor/phpstan/phpstan/phpstan/src/Command/AnalyseApplication.php(143): PHPStan\Command\AnalyserRunner->runAnalyser(Array, Array, Object(Closure), Object(Closure), true, true, '/app/phpstan.ne...', NULL, NULL, Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput))
#18 phar:///app/vendor/phpstan/phpstan/phpstan/src/Command/AnalyseApplication.php(74): PHPStan\Command\AnalyseApplication->runAnalyser(Array, Array, true, '/app/phpstan.ne...', Object(PHPStan\Command\Symfony\SymfonyOutput), Object(PHPStan\Command\Symfony\SymfonyOutput), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput))
#19 phar:///app/vendor/phpstan/phpstan/phpstan/src/Command/AnalyseCommand.php(148): PHPStan\Command\AnalyseApplication->analyse(Array, false, Object(PHPStan\Command\Symfony\SymfonyOutput), Object(PHPStan\Command\Symfony\SymfonyOutput), false, true, '/app/phpstan.ne...', Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput))
#20 phar:///app/vendor/phpstan/phpstan/phpstan/vendor/symfony/console/Command/Command.php(228): PHPStan\Command\AnalyseCommand->execute(Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Output\ConsoleOutput))
#21 phar:///app/vendor/phpstan/phpstan/phpstan/vendor/symfony/console/Application.php(856): _HumbugBox9db2e91495d9\Symfony\Component\Console\Command\Command->run(Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Output\ConsoleOutput))
#22 phar:///app/vendor/phpstan/phpstan/phpstan/vendor/symfony/console/Application.php(237): _HumbugBox9db2e91495d9\Symfony\Component\Console\Application->doRunCommand(Object(PHPStan\Command\AnalyseCommand), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Output\ConsoleOutput))
#23 phar:///app/vendor/phpstan/phpstan/phpstan/vendor/symfony/console/Application.php(138): _HumbugBox9db2e91495d9\Symfony\Component\Console\Application->doRun(Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Input\ArgvInput), Object(_HumbugBox9db2e91495d9\Symfony\Component\Console\Output\ConsoleOutput))
#24 phar:///app/vendor/phpstan/phpstan/phpstan/bin/phpstan(76): _HumbugBox9db2e91495d9\Symfony\Component\Console\Application->run()
#25 phar:///app/vendor/phpstan/phpstan/phpstan/bin/phpstan(77): _HumbugBox9db2e91495d9\{closure}()
#26 /app/vendor/phpstan/phpstan/phpstan(6): require('phar:///app/ven...')
#27 {main}
thrown in phar:///app/vendor/phpstan/phpstan/phpstan/vendor/nette/utils/src/Utils/Strings.php on line 409
Code snippet that reproduces the problem
Sorry can't share the file here
Expected output
No internal error should be thrown.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels