exc-плохой код инструкции = i386_invop

Я получаю эту ошибку в последней версии xcode, используя swift 2

онлайн

let s = linkTxt.text

Текст в linkTxt появляется по кнопке "pasteFromClipBoard"

let s = linkTxt.text
        let u = NSURL(string: s!)
        let file = u?.lastPathComponent

В чем причина и как это исправить?

Обновление:

проблема проявляется в функции saveData(), которая вызывается после завершения загрузки файла. Он вызывает из функции NSURLSessionDataTask. Еще интересно, что в кнопке start-downloading есть те же строки, где генерируется имя файла, и на нем такой ошибки нет. Я исправил эти проблемы, объявив переменные, записав в них текстовые значения и используя эти переменные в saveData(), кроме textObject.text; Мне также пришлось удалить строки с NSUserDefaults из saveData(), потому что я получил ту же ошибку. Ничего не понял >_‹

Обновление 2:

Это действительно ошибка. Я удалил эту строку и написал снова - проблема исправлена


person SwiftStudier    schedule 29.09.2015    source источник
comment
когда вы смотрите на обратную трассировку, что еще вы видите? Меня интересуют кадры выше того, что мы видим здесь. они, скорее всего, будут указывать на функции, для которых нет исходного кода, только ассемблер. И действительно ли плохая инструкция - это инструкция ud2? Какие последние строки в консоли, когда это происходит? Из того, что я уже вижу, я бы предположил, что это либо ошибка утверждения, либо проблема слабой ссылки.   -  person Michael    schedule 29.09.2015
comment
В консоли вижу только lldb. Нет описания ошибки   -  person SwiftStudier    schedule 29.09.2015
comment
Что ж, тогда мне нужна обратная трассировка и дизассемблирование, показывающее настоящую неверную инструкцию.   -  person Michael    schedule 29.09.2015
comment
где я могу найти то, что вы просите?   -  person SwiftStudier    schedule 30.09.2015


Ответы (1)


linkTxt.txt возвращает nil, и NSURL(string: s!) попытается принудительно развернуть его.

let s = linkTxt.text
if let s = linkTxt.txt {
    let u = NSURL(string: s!)
    let file = u?.lastPathComponent
}
person Lukas    schedule 29.09.2015
comment
Я начинаю думать, что это какие-то ошибки xcode, возможно, ipic.su /img/img7/fs/Снимокекрана2015-09-30v10.1443597877.png - person SwiftStudier; 30.09.2015