On a Project I discovered the following error:
[ERROR] Could not process "/var/www/html/path/to/src/Pages/Product.php" file, due to:
"System error: "Class "Page" not found"
The code making problems is something like:
[
'Title' =>_t('Product.Title', 'Product Title'),
]
when running _t() inside an array.
Passing _t() to a variable directly, works
$labels['Title'] = _t('Product.Title', 'Product Title');
When I skip \Rector\Php81\Rector\Array_\FirstClassCallableRector, it works.
TODO:
Stack Trace:
Stack trace:
#0 vendor/rector/rector/vendor/composer/ClassLoader.php(576): include()
#1 vendor/rector/rector/vendor/composer/ClassLoader.php(427): Composer\Autoload\{closure}()
#2 [internal function]: Composer\Autoload\ClassLoader->loadClass()
#3 vendor/rector/rector/src/PhpParser/Node/Value/ValueResolver.php(285): defined()
#4 vendor/rector/rector/src/PhpParser/Node/Value/ValueResolver.php(219):
Rector\PhpParser\Node\Value\ValueResolver->resolveClassConstFetch()
#5 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php(134):
Rector\PhpParser\Node\Value\ValueResolver->Rector\PhpParser\Node\Value\{closure}()
#6 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php(98):
PhpParser\ConstExprEvaluator->evaluate()
#7 vendor/rector/rector/src/PhpParser/Node/Value/ValueResolver.php(188):
PhpParser\ConstExprEvaluator->evaluateDirectly()
#8 vendor/rector/rector/src/PhpParser/Node/Value/ValueResolver.php(113):
Rector\PhpParser\Node\Value\ValueResolver->resolveExprValueForConst()
#9 vendor/rector/rector/src/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php(140):
Rector\PhpParser\Node\Value\ValueResolver->getValue()
#10 vendor/rector/rector/src/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php(176):
Rector\NodeCollector\NodeAnalyzer\ArrayCallableMethodMatcher->resolveClassContextType()
#11 vendor/rector/rector/src/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php(73):
Rector\NodeCollector\NodeAnalyzer\ArrayCallableMethodMatcher->resolveCallerType()
#12 vendor/rector/rector/rules/Php81/Rector/Array_/FirstClassCallableRector.php(101):
Rector\NodeCollector\NodeAnalyzer\ArrayCallableMethodMatcher->match()
#13 vendor/rector/rector/src/Rector/AbstractRector.php(119):
Rector\Php81\Rector\Array_\FirstClassCallableRector->refactor()
#14 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(103):
Rector\Rector\AbstractRector->enterNode()
#15 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#16 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#17 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(125):
PhpParser\NodeTraverser->traverseNode()
#18 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#19 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#20 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(125):
PhpParser\NodeTraverser->traverseNode()
#21 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#22 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#23 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#24 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#25 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#26 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#27 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#28 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(90):
PhpParser\NodeTraverser->traverseArray()
#29 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(200):
PhpParser\NodeTraverser->traverseNode()
#30 vendor/rector/rector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php(71):
PhpParser\NodeTraverser->traverseArray()
#31 vendor/rector/rector/src/PhpParser/NodeTraverser/RectorNodeTraverser.php(49):
PhpParser\NodeTraverser->traverse()
#32 vendor/rector/rector/src/Application/FileProcessor.php(95):
Rector\PhpParser\NodeTraverser\RectorNodeTraverser->traverse()
#33 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(183):
Rector\Application\FileProcessor->processFile()
#34 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(160):
Rector\Application\ApplicationFileProcessor->processFile()
#35 vendor/rector/rector/src/Application/ApplicationFileProcessor.php(134):
Rector\Application\ApplicationFileProcessor->processFiles()
#36 vendor/rector/rector/src/Console/Command/ProcessCommand.php(176):
Rector\Application\ApplicationFileProcessor->run()
#37 vendor/rector/rector/vendor/symfony/console/Command/Command.php(285):
Rector\Console\Command\ProcessCommand->execute()
#38 vendor/rector/rector/vendor/symfony/console/Application.php(900):
RectorPrefix202507\Symfony\Component\Console\Command\Command->run()
#39 vendor/rector/rector/vendor/symfony/console/Application.php(279):
RectorPrefix202507\Symfony\Component\Console\Application->doRunCommand()
#40 vendor/rector/rector/src/Console/ConsoleApplication.php(66):
RectorPrefix202507\Symfony\Component\Console\Application->doRun()
#41 vendor/rector/rector/vendor/symfony/console/Application.php(162):
Rector\Console\ConsoleApplication->doRun()
#42 vendor/rector/rector/bin/rector.php(130): RectorPrefix202507\Symfony\Component\Console\Application->run()
#43 vendor/rector/rector/bin/rector(5): require_once('...')
#44 vendor/bin/rector(119): include('...')
#45 {main}". On line: 45
On a Project I discovered the following error:
The code making problems is something like:
[ 'Title' =>_t('Product.Title', 'Product Title'), ]when running
_t()inside an array.Passing
_t()to a variable directly, worksWhen I skip
\Rector\Php81\Rector\Array_\FirstClassCallableRector, it works.TODO:
Stack Trace: