I've been working on SR-276 <https://bugs.swift.org/browse/SR-276> and I'm
finding a fair amount of inconsistencies between corelib Foundation and OS
X Foundation. It seems to be most common with optionality of return values.
e.g., in NSURL

corelib:
    public func URLByAppendingPathComponent(pathComponent: String) -> NSURL?

OS X:
    public func URLByAppendingPathComponent(pathComponent: String) -> NSURL

That particular case seems to be a difference in the treatment of the
return value from CFURL

   public func CFURLCreateCopyAppendingPathComponent(allocator: CFAllocator!,
_ url: CFURL!, _ pathComponent: CFString!, _ isDirectory: Bool) -> CFURL!

Which briefly looking appears to be the same between corelib and OS X.

I'm not sure what the best way forward on these things is, though, as the
corelib versions have seemed consistently improved, but presumably we still
want maintain compatibility. Anyone have ideas?
_______________________________________________
swift-corelibs-dev mailing list
swift-corelibs-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-corelibs-dev

Reply via email to