[swift-users] Expression pattern cannot be a named tuple constant
Shane S
electro_alchemy at hotmail.com
Wed Jul 6 09:00:30 CDT 2016
I’m not convinced that I see this as a bug, maybe more of a feature request?
The test given seems to be conflating a tuple-type with tuple-pattern…
Shane
> On Jul 5, 2016, at 6:16 PM, Neil Faiman via swift-users <swift-users at swift.org> wrote:
>
> SR-1993.
>
>> On Jul 5, 2016, at 4:15 PM, Jordan Rose <jordan_rose at apple.com> wrote:
>>
>> I'd definitely consider that a bug. Can you file it at bugs.swift.org?
>>
>> Jordan
>>
>>> On Jul 4, 2016, at 14:56, Neil Faiman via swift-users <swift-users at swift.org> wrote:
>>>
>>> (Resending — this didn’t get any responses when I sent it a month ago.)
>>>
>>> Swift 2.2 in Xcode 7.3.1.
>>>
>>> Apparently you cannot use a named tuple constant as an expression pattern in a case label.
>>>
>>> func test(x: Int, y: Int) -> Int {
>>> let int_1 = 1
>>> switch x {
>>> case 0:
>>> return 0
>>> case int_1:
>>> return 1
>>> default:
>>> break
>>> }
>>>
>>> let int_1_1: (Int, Int) = (1, 1)
>>> switch (x, y) {
>>> case (0, 0):
>>> return 0
>>> case int_1_1: // <<<<
>>> return 1
>>> default:
>>> return -1
>>> }
>>> }
>>>
>>> error: expression pattern of type '(Int, Int)' cannot match values of type '(Int, Int)'
>>> case int_1_1:
>>> ^~~~~~~
>>>
>>> The error message is particularly amusing.
>>>
>>> - Neil Faiman
>>> _______________________________________________
>>> swift-users mailing list
>>> swift-users at swift.org
>>> https://lists.swift.org/mailman/listinfo/swift-users
>>
>
> _______________________________________________
> swift-users mailing list
> swift-users at swift.org
> https://lists.swift.org/mailman/listinfo/swift-users
More information about the swift-users
mailing list