-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Sema/SIL: NSError has no special powers without ObjC interop. #7761
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
@swift-ci Please test |
Build failed |
69f3222
to
43a559e
Compare
@swift-ci Please test Linux |
Build failed |
43a559e
to
7f2b778
Compare
@swift-ci Please test Linux |
Build failed |
707ea16
to
eb8e7bc
Compare
@swift-ci Please test Linux |
Build failed |
eb8e7bc
to
e7fde81
Compare
@swift-ci Please test Linux |
Thank you! This is a huge fix in terms of usability of Swift on Linux! |
@lupinglade I have to ask, why do you need NSError on Linux in the first place? |
@swift-ci Please test OS X |
Build failed |
@jckarter We're catching NSErrors thrown by corelibs-foundation. I think this is a common use case. We're also throwing our own errors using NSError currently just for consistency, though we can change that - but we can't change the fact that Foundation is using them, right? |
I can confirm this fixed the crash for me. As for fixing Foundation not to throw NSError on Linux, I may be able to find time this weekend to do that pull request myself... I hope so anyhow. |
@swift-ci Please test OS X |
Build failed |
@swift-ci Please test OS X |
In particular, it doesn't "toll-free bridge" to the Error existential on non-ObjC-interop platforms, and we would miscompile as if it could. This should fix SR-585.
e7fde81
to
d998692
Compare
@swift-ci Please test |
Build failed |
@swift-ci Please test Linux |
Build failed |
@shahmishal Looks like the Linux builders might be hitting resource limits on the validation test suite:
|
Can we get this into the swift 3.1 branch? |
In particular, it doesn't "toll-free bridge" to the Error existential on non-ObjC-interop platforms, and we would miscompile as if it could. This should fix SR-585.