[swift-users] Type of expression is ambiguous for static tuples

David Hart david at hartbit.com
Fri Sep 1 07:53:31 CDT 2017


Its slightly different though. In the case of:

let cgColor: CGColor = .clear.cgColor

clear is a static property on UIColor, not CGColor. In his example, pythagoreanTriple is a property on Double so it does feel like a bug.

> On 1 Sep 2017, at 13:31, Adrian Zubarev via swift-users <swift-users at swift.org> wrote:
> 
> It’s because the compiler does not support this yet. It’s the same with `let cgColor: CGColor = .clear.cgColor // will not work`.
> 
> Instead you need to write `UIColor.clear.cgColor` or in your case `Double.phythagoreanTruple.0`
> 
> 
> Am 1. September 2017 um 12:17:57, Rudolf Adamkovič via swift-users (swift-users at swift.org <mailto:swift-users at swift.org>) schrieb:
> 
>> Given the following extension ...
>> 
>> extension Double {
>>     typealias Triple = (Double, Double, Double)
>>     static let pythagoreanTriple: Triple = (3, 4, 5)
>> }
>> ... why does Swift compiler emits the following errors?
>> 
>> // Type of expression is ambiguous without more context
>> let a: Double = .pythagoreanTriple.0
>> 
>> // Type of expression is ambiguous without more context
>> func f(_ x: Double) {}
>> f(.pythagoreanTriple.0)
>> The errors disappear with explicit Double.pythagoreanTriple.0.
>> 
>> Why doesn't the compiler infer Double in this case?
>> 
>> FYI: Posted also to Stack Overflow here:
>> 
>> https://stackoverflow.com/questions/45998034/type-of-expression-is-ambiguous-for-static-tuples <https://stackoverflow.com/questions/45998034/type-of-expression-is-ambiguous-for-static-tuples>
>> R+
>> 
>> _______________________________________________
>> 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 <mailto:swift-users at swift.org>
> https://lists.swift.org/mailman/listinfo/swift-users <https://lists.swift.org/mailman/listinfo/swift-users>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-users/attachments/20170901/e79b6c19/attachment.html>


More information about the swift-users mailing list