Быстрая развязка "охранник позволила" провалилась

Не удается развернуть дополнительный тип с Swift 2.2, Xcode Version 7.3 (7D175)

"гвардия пусть" не удалась

Но "Guard Var" работает Но

Пожалуйста помоги! Что здесь происходит?

EDIT1

    let localPresenter = presenter
    let localDataSource = dataSource
    let configurator: ViewControllerConfigurator = { inputView in
        let a = inputView as? ChatTableViewController
        guard var chatListController = a else {
            throw ApplicationErrors.ModuleConfigureError.WrongViewInput
        }
        localPresenter.view = chatListController
        chatListController.presenter = localPresenter
        chatListController.tableView.dataSource = localDataSource
    }

EDIT2 Этот код работает нормально:

        let localPresenter = presenter
        let localDataSource = dataSource
        let configurator: ViewControllerConfigurator = { inputView in
            let a = inputView as? ChatTableViewController
            if let chatListController = a {
                localPresenter.view = chatListController
                chatListController.presenter = localPresenter
                chatListController.tableView.dataSource = localDataSource
            } else {
                throw ApplicationErrors.ModuleConfigureError.WrongViewInput
            }
        }

1 ответ

Похоже, это ошибка в lldb. Если я установил точку останова в строке с помощью "guard", то "guard" завершится ошибкой:

Но если я переместлю эту точку останова за блок защиты, код будет работать нормально:

Другие вопросы по тегам