сегодня я обновил свой 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
}
и теперь я больше не получаю сообщение об ошибке, даже несмотря на то, что оно говорит, что принудительное приведение к тому же типу не имеет никакого эффекта.
Может кто-нибудь объяснить мне это?