Security FrameworkのSecItemCopyMatchingの引数が変わり、かなりはまったので、メモ
Swift1では
var result: Unmanaged<AnyObject>? var status: OSStatus = SecItemCopyMatching(query as CFDictionaryRef, &result)
このように書けていましたが、第2引数がUnsafeMutablePointerをとるようになったのと、&が使えなくなったので、 以下のように書き換える必要がありました。
var result: Unmanaged<AnyObject>? let pointer: UnsafeMutablePointer<AnyObject?> = UnsafeMutablePointer((result?.toOpaque())!) var status: OSStatus = SecItemCopyMatching(query as CFDictionaryRef, pointer)