Skip to content

[Async CC] Support for protocol extension methods. #34200

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

Conversation

nate-chandler
Copy link
Contributor

To support, consumed polymorphic arguments out of the argument explosion and used the argument lowering type of the self parameter.

@nate-chandler
Copy link
Contributor Author

@swift-ci please test and merge

1 similar comment
@nate-chandler
Copy link
Contributor Author

@swift-ci please test and merge

@nate-chandler
Copy link
Contributor Author

@swift-ci please test windows

Previously, the polymorphic arguments were being discarded.  Here, that
situation is improved by pulling the polymorphic arguments out of the
explosion when having the polymorphic parameters via the
NecessaryBindings instance.  In order to eanble that, an overload of
NecessaryBindings::save is added which takes an explosion and asserts
that the polymorphic parameter pulled from the explosion matches with
the polymorphic parameter in the NecessaryBindings instance.
Use the TypeInfo for the argument lowering type of the self parameter
rather than for the self parameter's type itself.
@nate-chandler nate-chandler force-pushed the concurrency/irgen/protocol-extension-methods branch from e8f5677 to 72051ef Compare October 6, 2020 18:55
@nate-chandler
Copy link
Contributor Author

@swift-ci please test and merge

@nate-chandler
Copy link
Contributor Author

@swift-ci please test windows

@nate-chandler
Copy link
Contributor Author

@swift-ci please clean test linux

@nate-chandler nate-chandler merged commit 1af9977 into swiftlang:main Oct 7, 2020
@nate-chandler nate-chandler deleted the concurrency/irgen/protocol-extension-methods branch October 7, 2020 03:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant