Autocompletion: Analyze CLASS types as they are encountered #91653
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Supersedes #84266
Second part of fixing #78003 (can be closed if #84264 was already merged)
When
_guess_expression_types
encounters a CLASS type that was not analysed before it will now fully analyse it before returning the type. Compared to #84266 this moves the recursive approach to the autocompletion code, and leaves the parser as is. This reduces the possibility to introduce cyclic reference issues with that.This shouldn't lead to infinite loops as the analysing is still shallow and the autocompletion already has save guards for recursion limits.