[6.2][Distributed] Distributed actor usage through protocol with lib-evolution #80942
+59
−25
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.
Description: This corrects how we were dealing with dispatch thunks -- mostly be
removing a lot of special casing we did but doesn't seem necessary and
instead we correct and emit all the necessary information int TBD.
This builds on #74935 by further refining how we fixed that issue, and adds more regression tests. It also removes a load of special casing of distributed thunks in library evolution mode, which is great.
Scope/Impact: Resolves how we deal with dispatch thunks in library evolution mode. We previously wrongly assumed we can just not do dispatch thunks in some situations, this together with other partial fixes worked however was only a partial fix. Instead, this patch resolves all these issues, by removing all the piled up special cases.
Risk: Low, resolves library evolution issues in distributed @resolvable protocols specifically. Other code would not be affected, not would be code outside of library evoltion.
Testing: CI testing, added test covering this situation
Reviewed by: @xedin
Original PR: #80588
Radar: rdar://145292018