У меня есть следующий код.
class MyClass {
private var callbacks: [()->()] = []
func doIt(callback: (()->())?) {
if let callback = callback {
callbacks.append(callback)
}
// ... other code here
}
}
Когда я создаю проект в версии, появляется следующая ошибка:
Команда не выполнена из-за сигнала: Abort trap: 6
Утверждение не выполнено: (PAI2-›use_empty() && не должно иметь никаких применений), функция foldInverseReabstractionThunks, файл /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-700.0.52.2/src/swift/lib/SILPasses /SILCombinerVisitors.cpp, строка 549.
При выполнении SILFunctionTransform SIL Combine на SILFunction @TFC11AddCallback7MyClass4doItfS0_FGSqFT_T__T.
Обратите внимание, что ошибка появляется только в Release и только в Xcode 7 beta 5. Код работал в Xcode 7 beta 4.
Демонстрация: https://github.com/exchangegroup/add-callback-demo-ios< /а>
Похоже на ошибку в Swift? Отправил отчет об ошибке в Apple.
Обновлять
Проблема устранена в Xcode 7.0 beta 6 (7A192o).