forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 30
[pull] swiftwasm from main #2440
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
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Infer actor isolation from the overridden declaration unless some other isolation attribute was explicitly specified directly on that declaration. This allows type- and extension-level annotations with a global actor to not break overrides.
…er`. `@asyncHandler` methods can override with a completely different actor isolation because they will hop to the appropriate actor themselves. Therefore, allow differing actor isolation when an `@asyncHandler` method overrides another method, and don't propagate the actor isolation from the overridden method to the overriding `@asyncHandler` method.
…rement Records protocol requirement associated with a particular type in the constraint system, also useful to track parent conformance for conditional requirements.
… conformances and conditional requirements
…tatement/expression Make sure that "affected" declaration is recognized as the one to which result type is attached to if the requirement failure is originated in contextual type of `return` statement/expression. Resolves: SR-13992 Resolves: rdar://72819046 Resolves: rdar://57789606
…ingContinuation A handy overload that allows one to return a Result<> to a continuation without needing to manually unwrap it in client code. Resolves rdar://71870249
Resolves rdar://72604101
Implementation is left as a TODO for now. Resolves rdar://72161578 Partially resolves rdar://72105129
The C++ interop modules require C++ support. Explicitly require C++ as a feature when building these modules. This has no impact on the changes as all the tests enable C++ already.
…de-actor-isolation-fixes Concurrency override actor isolation fixes
- `Mangle::ASTMangler::mangleAutoDiffDerivativeFunction()` and `Mangle::ASTMangler::mangleAutoDiffLinearMap()` accept original function declarations and return a mangled name for a derivative function or linear map. This is called during SILGen and TBDGen. - `Mangle::DifferentiationMangler` handles differentiation function mangling in the differentiation transform. This part is necessary because we need to perform demangling on the original function and remangle it as part of a differentiation function mangling tree in order to get the correct substitutions in the mangled derivative generic signature. A mangled differentiation function name includes: - The original function. - The differentiation function kind. - The parameter indices for differentiation. - The result indices for differentiation. - The derivative generic signature.
I didn't add a test, because there is a performance problem in PredictableMemoryAccessOptimizations. Until this is fixed, the test would take too long. rdar://71040556
DefiniteInitialization: remove the limit of 64k aggregate elements.
[AutoDiff] Mangle derivative functions and linear maps
[Diagnostics] Special case requirement failures related to `return` statement/expression
…optional This is a follow-up to swiftlang#35072. Let's wait until both sides are equally optional before attempting `.rawValue` fix, otherwise there is a risk that a valid code would get diagnosed. Extend test coverage of possible `.rawValue` situations to contextual and argument positions to make sure that valid code is accepted. Resolves: SR-13951
Disable stability-stdlib-abi-without-asserts.test (72856256)
[concurrency] partially implement @mainactor + convenience method for UnsafeThrowingContinuation
Interop/Cxx: explicitly require `C++` for modules
[Diagnostics] Attempt `.rawValue` fix only if both types are equally …
MaxDesiatov
approved these changes
Jan 7, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )