[concurrency] warn about future reservation of 'await' as contextual keyword #35153
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.
Based on how the reviews of async/await are going, it seems we're slated to reserve
await
in a future version of Swift for expressions such asawait <expr>
. This PR provides a warnings and fix-it to help users upgrade / future-proof their code. The fix-it surrounds the use ofawait
with backticks. Other approaches were considered (to, say, emit a note on the declaration to suggest renaming it, or provide a fix-it that fully-qualifies the declaration reference), but in order to not accidentally warn about a backtick'dawait
, this warning was implemented in the parser, so such information is not available.Resolves rdar://67000350
TODO:
let _ = self.await
is still being flagged as being unqualified.await
was surrounded by backticks are still being warned about.await
as an identifier in local bindings?