From 6dba988629a4c5ab4c1a2d2dc66ebf38e60ad1bc Mon Sep 17 00:00:00 2001 From: Faizan Akram Dar Date: Wed, 19 May 2021 16:12:36 +0530 Subject: [PATCH] Fixes Undefined method call Psalm reported this ``` ERROR: UndefinedMethod - vendor/symfony/framework-bundle/Kernel/MicroKernelTrait.php:185:148 - Method ReflectionType::isBuiltin does not exist (see https://psalm.dev/022) $configuratorClass = $configureRoutes->getNumberOfParameters() > 0 && ($type = $configureRoutes->getParameters()[0]->getType()) && !$type->isBuiltin() ? $type->getName() : null; ``` --- src/Symfony/Bundle/FrameworkBundle/Kernel/MicroKernelTrait.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/Kernel/MicroKernelTrait.php b/src/Symfony/Bundle/FrameworkBundle/Kernel/MicroKernelTrait.php index 08e15d18d6b29..629061c48f757 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Kernel/MicroKernelTrait.php +++ b/src/Symfony/Bundle/FrameworkBundle/Kernel/MicroKernelTrait.php @@ -182,7 +182,7 @@ public function loadRoutes(LoaderInterface $loader) throw new \LogicException(sprintf('"%s" uses "%s", but does not implement the required method "protected function configureRoutes(RoutingConfigurator $routes): void".', get_debug_type($this), MicroKernelTrait::class), 0, $e); } - $configuratorClass = $configureRoutes->getNumberOfParameters() > 0 && ($type = $configureRoutes->getParameters()[0]->getType()) && !$type->isBuiltin() ? $type->getName() : null; + $configuratorClass = $configureRoutes->getNumberOfParameters() > 0 && ($type = $configureRoutes->getParameters()[0]->getType()) instanceof \ReflectionNamedType && !$type->isBuiltin() ? $type->getName() : null; if ($configuratorClass && !is_a(RoutingConfigurator::class, $configuratorClass, true)) { trigger_deprecation('symfony/framework-bundle', '5.1', 'Using type "%s" for argument 1 of method "%s:configureRoutes()" is deprecated, use "%s" instead.', RouteCollectionBuilder::class, self::class, RoutingConfigurator::class);