On Sep 29, 2016, at 13:29 , Rick Mann <[email protected]> wrote: > > So, it turns out, destURL was a let, not a var. That made the difference. > Sure seems like a bad diagnostic.
Yes, with that piece of extra information, I can see the same behavior in Xcode 8.1 that you originally described (with AnyObject instead of Any, as you said). > However, there's also a problem in that the documentation in Xcode 8 is: > > func setResourceValues(_ keyedValues: [URLResourceKey : Any]) throws I think what’s happening is that three different things are getting confused by the compiler (because destURL was not mutable, so the “natural” setResourceValues for type URL could not be inferred): 1. The setResourceValues method of URL (URLResourceValues). 2. The setResourceValues method of NSURL, translated across the Swift 3 API conversion applied to the Obj-C-based SDK ([URLResourceKey:Any]). 3. The setResourceValues method signature of NSURL, derived directly from the SDK header file without Swift 3 translation ([URLResourceKey:AnyObject]). Obviously, #3 shouldn’t be happening. It doesn’t seem like #2 should be happening either, given that Swift 3 isn’t supposed to bridge automatically any more. And, yes, the error message is a secondary error that obscures the real problem. So this may be 3 bugs rather than just 1. 3 gold stars for you. _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
