diff --git a/rules/DeadCode/Rector/Property/RemoveUselessVarTagRector.php b/rules/DeadCode/Rector/Property/RemoveUselessVarTagRector.php index c0aff29a41e..7a1d54f10eb 100644 --- a/rules/DeadCode/Rector/Property/RemoveUselessVarTagRector.php +++ b/rules/DeadCode/Rector/Property/RemoveUselessVarTagRector.php @@ -4,6 +4,7 @@ namespace Rector\DeadCode\Rector\Property; +use PhpParser\Comment\Doc; use PhpParser\Node; use PhpParser\Node\Stmt\ClassConst; use PhpParser\Node\Stmt\Expression; @@ -63,6 +64,11 @@ public function getNodeTypes(): array */ public function refactor(Node $node): ?Node { + // a @var tag can only live in a docblock; skip nodes without one + if (!$node->getDocComment() instanceof Doc) { + return null; + } + $phpDocInfo = $this->phpDocInfoFactory->createFromNodeOrEmpty($node); $hasChanged = $this->varTagRemover->removeVarTagIfUseless($phpDocInfo, $node);