我最近升级到Xcode 7。我的代码在6.3和iOS 8.4上运行良好,现在将无法编译分段错误。
我正在使用SQLite的Stephencelis库。似乎是它引起了问题。
我将感谢任何帮助,任何想法。下面是错误消息的最后一部分:- 在/Users/luben/Downloads/SQLite.swift-master/SQLite/Query.swift:740:22
- 当类型检查声明0x7fbab3ee2d68在/Users/luben/Downloads/SQLite.swift-master/SQLite/Query.swift:740:51
While类型检查表达式在[/Users/luben/Downloads/SQLite.swift-master/SQLite/Query.swift:740:51 - line:774:7] RangeText="{var (columnNames, idx) = (String: Int, 0)列:每个在self.query.columns ??[Expression(literal: "*")] {let pair = each.expression.SQL.characters.split {$0 == "."}。map {String($0)}let (tableName, column) = (pair。计数> 1 ?对。第一:nil, pair.last!
func expandGlob(namespace: Bool) -> Query -> Void { return { table in var query = Query(table.database, table.tableName.unaliased) if let columns = table.columns { query.columns = columns } var names = query.selectStatement.columnNames.map { quote(identifier: $0) } if namespace { names = names.map { "(table.tableName.SQL).($0)" } } for name in names { columnNames[name] = idx++ } } } if column == "*" { let tables = [self.query.select(*)] + self.query.joins.map { $0.table } if let tableName = tableName { for table in tables { if table.tableName.SQL == tableName { expandGlob(true)(table) continue column } } assertionFailure("no such table: (tableName)") } tables.map(expandGlob(self.query.joins.count > 0)) continue } columnNames[each.expression.SQL] = idx++ } return columnNames
} ()"
GitHub上的SQLite.swift项目提供了一个Swift 2分支。这也许能解决问题。