forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 30
Resolve conflicts with the main branch #2818
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
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
The data of an OpaqueSyntaxNode should never be modified. Also, this allows us to get rid of two const_casts.
It doesn't do anything anymore and we shouldn't have it, so let's just remove it.
Unblocking the bots.
…fb375df29c1eb9c3815c2f2 Disable two tests on 32 bit until they are updated.
SIL: support store_borrow and partial_apply in memory lifetime verification
…te-navigator-subheading [SymbolGraph] don't emit navigator name if it's the same as subHeading
The APIJSON tests used the default module cache and generated different modules under the same name. This lead some tests to load a different module than intended. This was made more easily detectable with the lock on the swiftmodules instead of the swiftinterfaces.
Some ObjC runtime calls are weak or strong depending on the deployment target. When strong, we get warnings that the NULL checks always succeed; silence them. Some of the adjacent code looked up functions using dlsym when they aren't provided by the SDK. Our current minimum SDK always has them, so remove the dlsym workaround.
…-bindings [ConstraintSystem] Delay inference until let's clear that type variable attempt is successful
…guity-repr [SR-14280][CSSimplify] Increase the score when matching functions with different representations for contextual type
…rena reference cycles
…rkaround_r11_clobbere IRGen: Remove hack
…t-path-frontend [Frontend][Index] Add a new -index-unit-ouput-path and filelist equivalent to the frontend
The concurrency module gets imported implicitly when `-enable-experimental-concurrency` is passed to the compiler. If the concurrency module isn't imported, we crash on th assert verifying that we were able to find it. We need the module to lookup the `_runAsyncMain` function. This patch updates the compiler to stop type-checking the async-main function and emit an error if the module isn't available instead of crashing.
This patch adds a quick test to verify that we emit a reasonable error message when trying to use async-main without enabling concurrency or parsing as stdlib instead of crashing. Under both circumstances, the _Concurrency library won't be implicitly imported.
…lit-tests [build-script] Pass --lit-test-dir while testing swift-driver
Add Real Enable/Disable Flags for Cross-Module Incremental Builds
[Frontend] Lock the swiftmodule when rebuilding from the swiftinterface
Platform: link against ComCtl32 when using Common Controls
…async-main [Concurrency] Fix async-main crash
47b068d output a diagnostic if a deserialized decl was invalid (checking `Decl::isInvalid`). It had two major issues: 1. It incorrectly output diagnostics for valid modules 2. It did not catch call invalid declarations (1) is caused by `isInvalid` falling back to checking the storage for accessors when the interface type hasn't already been computed (a fallback to prevent a cycle due to `SimpleDidSetRequest` typechecking the body). Since the `VarDecl` hasn't finished deserializing, it returns `true` for its `isInvalid` check (even though it would later return `false`). For (2), only `ValueDecl`s would ever be invalid, since other declarations use a bit in `Decl` to check for validity. As that's not serialized, those would always be valid in deserialization. To avoid both these issues, instead output a flag for each declaration representing whether it is invalid (or not). Read that during deserialization and output a diagnostic if it is invalid. To be extra sure that a diagnostic is always output on an error, also output one when deserializing any `ErrorType`. This ensures that SILGen does not run when allowing errors (and an error is present), as it is likely to crash when presented with an invalid AST. Resolves rdar://74541834
…n-abi [TaskGroup] Towards ABI stability of groups
…d-type-descriptors [Concurrency] Emit extended method type descriptors for @objc async methods
…kup. Each individual lookup is async since they're actor instances.
An actor can have @objc members, but not if those members are "actor-isolated", i.e., not accessible from outside the actor according to the fundamental design of actors. For example, a sync function is considered actor-isolated since it needs special protection, so it cannot be @objc. But, we now have special capabilities to treat sync actor functions as implicitly async at use-sites outside of the actor. Does this mean that we can now allow sync actor functions to be @objc? No. Because the implicitly-async functionality does not extend to the world of ObjC: it simply would not be feasible to implement it there. Thus, I've added some extra regression-test coverage to handle these cases, and clarified the assertion here to not confuse others.
Revert "Disable Test That Trips Coro Split Assert on Linux"
…dr_br instructions. Handle destroy_addr of the destination. When replacing the cast, just remove such destroys. In real world SIL there will always be a destroy_addr in the success-branch of the cast. Not sure if this optimization could have ever kicked in for real world code.
Extract the "Src" and "Dest" operand indices for copy-like instructions (store, assign, copy_addr, cast) into a common base class. This enables sharing common code to handle similar copy-like instructions. NFC
…cked_cast_addr instructions
Also, relax the check for enums a bit. Instead of only accepting single-payload enums, just require that the payload type is the same for an enum location.
…_metatype, is_unique and fix_lifetime
Cherry-picked swiftlang#36122 🍒 |
[benchmark] Add StringSplitting and lines benchmarks
Support all relevant address-instructions in MemoryLocations and the MemoryLifetimeVerifier
Fail correctly if we can't import a shadow decl properly. We can probably support this in the future, but right now, it's more important that we don't crash while importing.
[cxx-interop] Using shadow with class template.
kateinoigakukun
approved these changes
Mar 10, 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.
No description provided.