88use PHPStan \Analyser \Error ;
99use PHPStan \Analyser \FileAnalyser ;
1010use PHPStan \Analyser \Generator \GeneratorNodeScopeResolver ;
11+ use PHPStan \Analyser \Generator \GeneratorScopeFactory ;
1112use PHPStan \Analyser \IgnoreErrorExtensionProvider ;
1213use PHPStan \Analyser \InternalError ;
1314use PHPStan \Analyser \LocalIgnoresProcessor ;
@@ -106,7 +107,7 @@ protected function createNodeScopeResolver(): NodeScopeResolver|GeneratorNodeSco
106107 $ readWritePropertiesExtensions !== [] ? new DirectReadWritePropertiesExtensionProvider ($ readWritePropertiesExtensions ) : self ::getContainer ()->getByType (ReadWritePropertiesExtensionProvider::class),
107108 self ::getContainer ()->getByType (ParameterClosureThisExtensionProvider::class),
108109 self ::getContainer ()->getByType (ParameterClosureTypeExtensionProvider::class),
109- static ::createScopeFactory (),
110+ self ::createScopeFactory (),
110111 $ this ->shouldPolluteScopeWithLoopInitialAssignments (),
111112 $ this ->shouldPolluteScopeWithAlwaysIterableForeach (),
112113 self ::getContainer ()->getParameter ('polluteScopeWithBlock ' ),
@@ -127,7 +128,8 @@ private function getAnalyser(DirectRuleRegistry $ruleRegistry): Analyser
127128 $ nodeScopeResolver = $ this ->createNodeScopeResolver ();
128129
129130 $ fileAnalyser = new FileAnalyser (
130- static ::createScopeFactory (),
131+ self ::createScopeFactory (),
132+ self ::getContainer ()->getByType (GeneratorScopeFactory::class),
131133 $ nodeScopeResolver ,
132134 $ this ->getParser (),
133135 self ::getContainer ()->getByType (DependencyResolver::class),
@@ -274,7 +276,7 @@ private function gatherAnalyserErrorsWithDelayedErrors(array $files): array
274276 $ ruleRegistry ,
275277 new IgnoreErrorExtensionProvider (self ::getContainer ()),
276278 self ::getContainer ()->getByType (RuleErrorTransformer::class),
277- static ::createScopeFactory (),
279+ self ::createScopeFactory (),
278280 new LocalIgnoresProcessor (),
279281 true ,
280282 );
0 commit comments