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
[SR-1811] Swift 3 regression related to inout closure params and protocols #44420
Comments
Huh. I didn't remember this ever working reliably. |
It (the short form) does work correctly in Xcode 7.3.1, Swift 2.2, and having to use the longer workaround-form in Swift 3 is frustrating … |
Here is a smaller example demonstrating a similar and possibly related issue: Xcode 7.3.1, Swift 2.2:
Xcode 8 beta 3, Swift 3:
Error: Cannot invoke 'processEachElementInPlace' with an argument list of type '((inout Int) -> ())' (Also, that where clause has to be there in order for the subscript to compile.) |
One more shorter way of demonstrating the issue:
|
Issue remains unsolved in dev snapshot 2016-08-16 (a).
|
Environment
OS X 10.11.5 (15F34), Xcode 8.0 beta (8S128d), Xcode 7.3.1
Additional Detail from JIRA
md5: 102c68ad72df56e90c563afcc1ec867c
duplicates:
Issue Description:
Below is the same short program in two versions, one for Swift 3 (Xcode 8 beta) and the other for Swift 2.2 (Xcode 7.3.1).
The version for Swift 3 demonstrates a compiler bug that I'm pretty sure was resolved a "long" time ago. I can't find the bug report right now but I might try to find it again later.
Bug/regression-demonstrating Swift 3 version (Xcode 8.0 beta (8S128d)):
Working Swift 2.2 version for comparison:
The text was updated successfully, but these errors were encountered: