Skip to content

[Distributed] Add support for distributed functions in extensions of distributed actors (fixed Linking too) #39787

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Oct 16, 2021

Conversation

ktoso
Copy link
Contributor

@ktoso ktoso commented Oct 16, 2021

This is #39785 with one additional small but important thing in Linking.cpp fixed -- that fixes the test that failed over there about the TBD entries.

Thank you @DougGregor for the work! Pulling here to get a toolchain going and this merged over the weekend.


Fix a few minor issues in the type checker and SILGen to properly cope with
distributed functions defined within extensions of distributed actors.
While here, centralize the logic that adds the "remote" function.

... and since this uncovered a problem with the mangling for distributed
functions, fix that, too.

Fixes rdar://84325525.

DougGregor and others added 4 commits October 15, 2021 22:46
…tors.

Fix a few minor issues in the type checker and SILGen to properly cope with
distributed functions defined within extensions of distributed actors.
While here, centralize the logic that adds the "_remote_" function.

Fixes rdar://84325525.
Distributed thunks were using the same mangling as direct method
reference thunks (i.e., for "super" calls). Although not technically
conflicting so long as actors never gain inheritance, it's confusing
and could cause problems in the future. So, introduce a distinct
mangling for distributed thunks and plumb them through the demangling
and remangler.
@ktoso ktoso requested a review from DougGregor October 16, 2021 10:33
@ktoso
Copy link
Contributor Author

ktoso commented Oct 16, 2021

@swift-ci please smoke test and merge

@ktoso
Copy link
Contributor Author

ktoso commented Oct 16, 2021

@swift-ci please build toolchain macOS

@ktoso ktoso added the distributed Feature → concurrency: distributed actor label Oct 16, 2021
@swift-ci swift-ci merged commit 1d93818 into swiftlang:main Oct 16, 2021
@swift-ci
Copy link
Contributor

macOS Toolchain
Download Toolchain
Git Sha - e1ae0be

Install command
tar -zxf swift-PR-39787-1181-osx.tar.gz --directory ~/

@ktoso ktoso deleted the distributed-func-in-actor-extension branch October 17, 2021 01:31
@ktoso
Copy link
Contributor Author

ktoso commented Oct 17, 2021

Uff, yay :-) Thanks for checking in Doug!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
distributed Feature → concurrency: distributed actor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants