[6.2][Concurrency] Downgrade non-Sendable type captures to warnings if clo… #80922
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.
…sure is in @preconcurrency context
Cherry-pick of #80737
Explanation:
Downgrades an error to a warning when closure captures something non-Sendable in pre-concurrency context.
The original check examined only the immediate closure, but it's possible that the closure happens to be in a preconcurrency context which also requires a downgrade.
Main Branch PR: [Concurrency] Downgrade non-Sendable type captures to warnings if clo… #80737
Risk: Low (Downgrades an error to a warning in a narrow set of circumstances that should not have any other side-effects and allow more code to type-check successfully).
Reviewed By: @hborla
Testing: Added new tests to the test suite.
Resolves: rdar://148996589
(cherry picked from commit cad2df3)