diff --git a/src/DefinitionResolver.php b/src/DefinitionResolver.php index cf2f8a6..25b048e 100644 --- a/src/DefinitionResolver.php +++ b/src/DefinitionResolver.php @@ -896,11 +896,12 @@ class DefinitionResolver // Anonymous class return new Types\Object_; } - $className = (string)$class->getResolvedName(); - - if ($className === 'static') { + if ($class instanceof PhpParser\Token && $class->kind === PhpParser\TokenKind::StaticKeyword) { + // `new static` return new Types\Static_; } + $className = (string)$class->getResolvedName(); + if ($className === 'self' || $className === 'parent') { $classNode = $class->getFirstAncestor(Node\Statement\ClassDeclaration::class); if ($className === 'parent') {