-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Merge 2020-10-28 into tensorflow #34477
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
Today, we check conformance exportability in two places: 1) For inlinable function bodies: in availability checking 2) For types in inlinable declaration signatures: in availability checking 3) For types in non-inlinable declaration signatures: in ExportabilityChecker I want to merge 2) and 3) together, and also generalize the conformance exportability check to check conformance availability as well. This is a preliminary refactoring towards achieving this goal.
Availability checking already knows how to check exportability for types and conformances referenced from inlinable function signatures and bodies. Let's generalize this to work on non-inlinable function signatures as well, allowing us to get rid of the ExportabilityChecker altogether.
…ailability checking The substitution map is checked elsewhere.
…lUnavailability()
…type The ExportContext describes the restrictions, if any, on what declarations can be uttered in a specific place in the program. Here, the place is either the signature of a declaration, or the body of a function.
Converting the innermost DeclContext into a Decl won't work if the innermost DeclContext is the parent context of a VarDecl. Instead, use the relevant bit of state from the ExportContext, which is computed correctly. This fixes a regression caused by an earlier commit in this PR which our test suite did not catch.
Switch To target-swiftc_driver
The requirement executable_test is not needed here. It was there for historical reasons. rdar://problem/70400635
…result_type_subst Pass subst options down when substitution sil_box type's substitution map
[Build System] Remove tvOS i386 slice from compiler-rt lib
* Update swift-rpathize.py to work with Python 3.8 and Python 2.7 In Python 2, str() is also a kind of bytes blob In Python 3, str() is a Unicode string that's unrelated * Avoid `l` as a variable name Python-lint correctly warns about single-character variables that can be confused with numbers
[Dependency Scanner] Do not escape strings in the scanner output
stdlib: remove `swiftMSVCRT`, replace with `swiftCRT` on Windows
…0816c78e919469 [silgen] Ensure that cleanup cloner clones formal access cleanups to formal access cleanups.
"Function builders" are being renamed to "result builders". Add the corresponding `@resultBuilder` attribute, with `@_functionBuilder` as an alias for it, Update test cases to use @resultBuilder.
Fold exportability checking into availability checking
For class storage AccessedStorage is now close to what some passes use for RC identity, but it still does not look past wrapping references in an Optional.
And add assertions.
[SR-10011] [Lexer] Raw Strings escape character sequence resembling multiline delimiter
[Diagnostics] Split "only concrete types conform to protocols" into a separate note
…ing-values-through [Async CC] Propagate runtime values.
SILGen: Fix assertion failure when emitting foreign-to-native thunk for a method with inout 'self'
* 'main' of github.com:apple/swift: [Diangostics] NFC: Adjust test-cases to expect that "type cannot conform" diagnostic has a note [Diagnostics] Split "only concrete types conform to protocols" into a separate note [Async CC] Pass executor along to callee. [Async CC] Pass task along from caller to callee. [Async CC] Save parent executor into context. [Async CC] Save parent context into child context. [Async CC] Pass the function's task to task_[de]alloc. [Async CC] Add ResumeParentExecutor to context. [Async CC] Add ResumeParent to async context. [Async CC] Add parent to async context. [IRGen] Defined TypeInfo for SwiftExecutor. [IRGen] Defined TI for TaskContinuationFunction. [IRGen] Defined TaskContinuationFunction. [IRGen] Defined TypeInfo for async context. SILGen: Fix assertion failure when emitting foreign-to-native thunk for a method with inout 'self'
When casting from existentials to class - and vice versa - it can happen that a cast is not RC identity preserving (because of potential bridging). This also affects mayRelease() of such cast instructions. For details see the comments in SILDynamicCastInst::isRCIdentityPreserving(). This change also includes some refactoring: I centralized the logic in SILDynamicCastInst::isRCIdentityPreserving(). rdar://problem/70454804
Fix typos in comments and docs
* 'main' of github.com:apple/swift: Fix typos in comments
* 'main' of github.com:apple/swift: RCIdentity: fix another case of not-RC-identity-preserving casts.
Please test with following PRs: @swift-ci Please clean test TensorFlow |
@swift-ci Please clean test TensorFlow |
Instructs auxiliary repos to use local clones rather than fresh checkouts from Package.swift. This gives us more control over branches specified in update-checkout-config.json. This resolves mismatches such as yams, which currently points to a fork in one place, but not the other.
@swift-ci Please clean test TensorFlow |
I can't seem to reproduce the test failure locally. |
I can't reproduce, either. |
Reverts the reversion in #34188. Bisection points to #34188 as the cause of a crasher that looks to be the result of a miscompile. Adding this back resolves the crasher. Details of the crash: The `DiscontiguousSliceSlicing` test in validation-test/StdlibUnittest/RangeSet.swift crashes in the `every()` function on line 15. When the contents of this function are replaced with a functional equivalent that uses different syntax, the crash resolves.
@swift-ci Please clean test TensorFlow |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ship it!
No description provided.