Rip designated types out of the AST #38728
Merged
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.
Designated types were removed from the constraint solver in #34315, but they are currently still represented in the AST and fully checked. This change removes them as completely as possible without breaking source compatibility (mainly with old swiftinterfaces) or changing the SwiftSyntax tree. Designated types are still parsed when the feature is enabled, but they are dropped immediately and a warning is diagnosed. During decl checking we also
still check if the precedence group is really a designated type, but only so that we candiagnose a warning and fall back to DefaultPrecedence if a precedence group fails to resolve and designated types were enabled.This change also fixes an apparent bug in the parser where we did not diagnose operator declarations that contained a
:
followed by a non-identifier token.Part of work on #34556.