У меня был код, похожий на этот, который вызывал ошибку "- [NSWindow release]: сообщение отправлено на освобожденный экземпляр":
var w = NSWindow(contentRect: NSMakeRect(100, 100, 500, 500), styleMask: .closable, backing: NSWindow.BackingStoreType.buffered, defer: false)
w.title = "Window"
w.makeKeyAndOrderFront(nil)
//w.isReleasedWhenClosed = false
w.close()
w = NSWindow(contentRect: NSMakeRect(100, 100, 500, 500), styleMask: .closable, backing: NSWindow.BackingStoreType.buffered, defer: false)
Когда я добавил закомментированную строку, она работала нормально.
Я просто хотел узнать, ожидается ли это поведение Swift при управлении памятью? Было совершенно неожиданно, что переназначение переменной могло быть причиной этой проблемы.