Ошибка сегментации 11 при проверке типа - PullRequest
0 голосов
/ 09 июня 2018

сегодня я обновил свой Mac для разработки до Mac OS High Sierra 10.13.5, а затем и до последней версии XCode.Теперь без каких-либо изменений мой проект больше не будет компилироваться.Я получаю Command failed due to signal: Segmentation Fault: 11.В нижней части трассировки стека написано 1. While type-checking 'tableView(_:titleForHeaderInSection:)' at /.../BodyweightTableViewController.swift:227:14 2. While type-checking expression at [/.../BodyweightTableViewController.swift:234:15 - line:234:123] RangeText="self.bodyweights[startIndex..<self.bodyweights.count].indices.contains(endIndex) && (endIndex-startIndex) < 7"

Именованный метод выглядит следующим образом:

override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
    ...

    var titleHeader = ... # some initialisation

    ... # some calculations that may alter the header

    return titleHeader
}

Я совершенно не понимаю, в чем здесь проблема.Я посмотрел на некоторые другие вопросы здесь, но они, похоже, не помогли мне.

/ Edit: я изменил эту строку

 while self.bodyweights[startIndex..<self.bodyweights.count].indices.contains(endIndex) && (endIndex-startIndex) < 7  {
        endIndex += 1
    }

на эту

while (self.bodyweights[startIndex..<self.bodyweights.count] as! ArraySlice<Bodyweight>).indices.contains(endIndex) && (endIndex-startIndex) < 7 {
        endIndex += 1
    }

и теперь я больше не получаю сообщение об ошибке, даже несмотря на то, что оно говорит, что принудительное приведение к тому же типу не имеет никакого эффекта.
Может кто-нибудь объяснить мне это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...