I'm using an Objective-C library that has me provide a callback that takes a
double-pointer parameter like this, where only the inner pointer is nullable:
CKRecord *_Nonnull *_Nullable inOutRecordPtr
Swift 2 imported this as an AutoreleasingUnsafeMutablePointer<CKRecord?>, as
expected. However, Swift 3 is importing it as
AutoreleasingUnsafeMutablePointer<CKRecord>?, which breaks the library's API
since there's no way to return a new record.
Is this a Swift 3 bug, or am I missing something?
swift-users mailing list