-
-
Notifications
You must be signed in to change notification settings - Fork 154
Fatal error when go to definition of constant inside trait #2784
Copy link
Copy link
Closed
Description
Steps to reproduce
Given PHP file
<?php
trait SomeTrait
{
const SOME_CONSTANT = 'some value';
public function action()
{
self::SOME_CONSTANT;
}
}- cursor at line 9 on the character "_" of "self::SOME_CONSTANT;"
- :call phpactor#GotoDefinition()
Expected
Find definition on line 4
Actual
Phpactor returned an error: Fatal error: Uncaught AssertionError: assert($containingClass instanceof ReflectionClass || $containingClass instanceof ReflectionInterface || $containingClass instanceof ReflectionEnum) in /home/alexandre/.vim/plugged/phpactor/lib/WorseReferenceFinder/WorseReflectionDefinitionLocator.php:198
Stack trace:
#0 /home/alexandre/.vim/plugged/phpactor/lib/WorseReferenceFinder/WorseReflectionDefinitionLocator.php(198): assert(false, 'assert($contain...')
#1 /home/alexandre/.vim/plugged/phpactor/lib/WorseReferenceFinder/WorseReflectionDefinitionLocator.php(70): Phpactor\WorseReferenceFinder\WorseReflectionDefinitionLocator->gotoMember(Object(Phpactor\WorseReflection\Core\Inference\NodeContext))
#2 /home/alexandre/.vim/plugged/phpactor/lib/WorseReferenceFinder/WorseReflectionDefinitionLocator.php(53): Phpactor\WorseReferenceFinder\WorseReflectionDefinitionLocator->gotoDefinition(Object(Phpactor\TextDocument\StandardTextDocument), Object(Phpactor\WorseReflection\Bridge\TolerantParser\Reflection\ReflectionOffset))
#3 /home/alexandre/.vim/plugged/phpactor/lib/ReferenceFinder/ChainDefinitionLocationProvider.php(34): Phpactor\WorseReferenceFinder\WorseReflectionDefinitionLocator->locateDefinition(Object(Phpactor\TextDocument\StandardTextDocument), Object(Phpactor\TextDocument\ByteOffset))
#4 /home/alexandre/.vim/plugged/phpactor/lib/Extension/ReferenceFinderRpc/Handler/GotoDefinitionHandler.php(65): Phpactor\ReferenceFinder\ChainDefinitionLocationProvider->locateDefinition(Object(Phpactor\TextDocument\StandardTextDocument), Object(Phpactor\TextDocument\ByteOffset))
#5 /home/alexandre/.vim/plugged/phpactor/lib/Extension/Rpc/RequestHandler/RequestHandler.php(27): Phpactor\Extension\ReferenceFinderRpc\Handler\GotoDefinitionHandler->handle(Array)
#6 /home/alexandre/.vim/plugged/phpactor/lib/Extension/Rpc/RequestHandler/ExceptionCatchingHandler.php(20): Phpactor\Extension\Rpc\RequestHandler\RequestHandler->handle(Object(Phpactor\Extension\Rpc\Request))
#7 /home/alexandre/.vim/plugged/phpactor/lib/Extension/Rpc/RequestHandler/LoggingHandler.php(25): Phpactor\Extension\Rpc\RequestHandler\ExceptionCatchingHandler->handle(Object(Phpactor\Extension\Rpc\Request))
#8 /home/alexandre/.vim/plugged/phpactor/lib/Extension/Rpc/Command/RpcCommand.php(65): Phpactor\Extension\Rpc\RequestHandler\LoggingHandler->handle(Object(Phpactor\Extension\Rpc\Request))
#9 /home/alexandre/.vim/plugged/phpactor/lib/Extension/Rpc/Command/RpcCommand.php(45): Phpactor\Extension\Rpc\Command\RpcCommand->processRequest(Object(Phpactor\Extension\Rpc\Request))
#10 /home/alexandre/.vim/plugged/phpactor/vendor/symfony/console/Command/Command.php(298): Phpactor\Extension\Rpc\Command\RpcCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#11 /home/alexandre/.vim/plugged/phpactor/vendor/symfony/console/Application.php(1040): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /home/alexandre/.vim/plugged/phpactor/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand(Object(Phpactor\Extension\Rpc\Command\RpcCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /home/alexandre/.vim/plugged/phpactor/lib/Application.php(48): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 /home/alexandre/.vim/plugged/phpactor/vendor/symfony/console/Application.php(171): Phpactor\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /home/alexandre/.vim/plugged/phpactor/bin/phpactor(46): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 {main}
thrown in /home/alexandre/.vim/plugged/phpactor/lib/WorseReferenceFinder/WorseReflectionDefinitionLocator.php on line 198
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels