diff --git a/src/PostRector/Rector/UnusedImportRemovingPostRector.php b/src/PostRector/Rector/UnusedImportRemovingPostRector.php index 120c30b3520..1f71cde1cb4 100644 --- a/src/PostRector/Rector/UnusedImportRemovingPostRector.php +++ b/src/PostRector/Rector/UnusedImportRemovingPostRector.php @@ -158,6 +158,9 @@ private function findNamesInDocBlocks(Namespace_|FileNode $rootNode): array $nodeToCheck = $totalDocs === 1 ? $node : clone $node; if ($totalDocs > 1) { $nodeToCheck->setDocComment($doc); + // the clone carries the PhpDocInfo already resolved for the original node (its last doc comment), + // so the factory would return it instead of parsing $doc + $nodeToCheck->setAttribute(AttributeKey::PHP_DOC_INFO, null); } $phpDocInfo = $this->phpDocInfoFactory->createFromNodeOrEmpty($nodeToCheck); diff --git a/tests/Issues/NamespacedUseAutoImport/Fixture/stacked_docblocks_keep_used_import.php.inc b/tests/Issues/NamespacedUseAutoImport/Fixture/stacked_docblocks_keep_used_import.php.inc new file mode 100644 index 00000000000..c85fbb590b9 --- /dev/null +++ b/tests/Issues/NamespacedUseAutoImport/Fixture/stacked_docblocks_keep_used_import.php.inc @@ -0,0 +1,21 @@ +