You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
josephlord opened this issue
Apr 26, 2016
· 6 comments
Assignees
Labels
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.compilerThe Swift compiler in itselfcrashBug: A crash, i.e., an abnormal termination of software
Assertion failed: (false && "partial_apply of foreign functions not implemented"), function getPartialApplicationFunction, file /Volumes/Data/swift-public/swift/lib/IRGen/IRGenSIL.cpp, line 2069.
This specific issue should be easy to fix. We actually do support emitting something very similar to this, a dynamic call on an AnyObject. In this case, even if the call is not curried we partial_apply the result of the method lookup and wrap it in an optional.
Really IRGen's code path for partial_apply should go away altogether, in favor of generalizing curry thunks in SILGen.
@josephlord Oh, just to be 100% clear, any time the compiler crashes without producing a diagnostic is our fault and definitely a bug :-) The general design is that any invalid code must be caught in the type checker or early in SILGen; anything blowing up in IRGen means another part of the compiler screwed up. Also, SR-44 is a different issue, and appears to have been fixed.
Thanks @slavapestov. I thought that was probably the case but wasn't absolutely sure as it wasn't a swiftc crash as such. I was glad I could reduce it to a simple case.
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.compilerThe Swift compiler in itselfcrashBug: A crash, i.e., an abnormal termination of software
Environment
Xcode 7.3 (iOS and OS X SDKs)
Additional Detail from JIRA
md5: dee8c4a049fee4f9304cb69708b59296
relates to:
Issue Description:
I know this might not be valid and may become a normal error in Swift 3 but I thought I should report it anyway.
Results in:
This was quite hard to find in a big project. I needed to do command line build with -j1
This may be related to SR-44 but it didn't seem to match completely.
The text was updated successfully, but these errors were encountered: