Swift2 SQLite.swift与Xcode 7.0中的swift 2.0

Swift2 SQLite.swift与Xcode 7.0中的swift 2.0,swift2,xcode7,sqlite.swift,Swift2,Xcode7,Sqlite.swift,我最近更新到Xcode 7.0,并尝试构建使用SQLite.swift库的项目。在转换为最新的swift语法(编辑->转换->转换为最新的swift语法…)之后,我收到了太多错误,我不知道从哪里开始修复它们。我还尝试单独转换SQLite.swift项目,但在编译时总是会收到许多警告和一些错误,如: /Users/dobrev/Development/iOS/SQLite.swift/SQLite/Statement.swift:25:30: error: cannot invoke initia

我最近更新到Xcode 7.0,并尝试构建使用SQLite.swift库的项目。在转换为最新的swift语法(编辑->转换->转换为最新的swift语法…)之后,我收到了太多错误,我不知道从哪里开始修复它们。我还尝试单独转换SQLite.swift项目,但在编译时总是会收到许多警告和一些错误,如:

/Users/dobrev/Development/iOS/SQLite.swift/SQLite/Statement.swift:25:30: error: cannot invoke initializer for type 'sqlite3_destructor_type' with an argument list of type '(COpaquePointer)'
internal let SQLITE_STATIC = sqlite3_destructor_type(COpaquePointer(bitPattern: 0))
                             ^
/Users/dobrev/Development/iOS/SQLite.swift/SQLite/Statement.swift:26:33: error: cannot invoke initializer for type 'sqlite3_destructor_type' with an argument list of type '(COpaquePointer)'
internal let SQLITE_TRANSIENT = sqlite3_destructor_type(COpaquePointer(bitPattern: -1))
最终导致
命令失败,原因是信号:分段故障11

有人能帮忙吗

#define SQLITE_STATIC      ((sqlite3_destructor_type)0)
#define SQLITE_TRANSIENT   ((sqlite3_destructor_type)-1)
来自
的指针未导入Swift,可能是由于“不安全”的指针转换

SQLite.Swift项目中的Statement.Swift中显示了可能的Swift定义:

let SQLITE_STATIC = sqlite3_destructor_type(COpaquePointer(bitPattern: 0))
let SQLITE_TRANSIENT = sqlite3_destructor_type(COpaquePointer(bitPattern: -1))
对于Swift 2,您需要

let SQLITE_STATIC = unsafeBitCast(0, sqlite3_destructor_type.self)
let SQLITE_TRANSIENT = unsafeBitCast(-1, sqlite3_destructor_type.self)

GitHub上有一个版本为SQLite.swift的分支。对于swift 2可能重复的damn,我甚至没有检查项目的分支-谢谢@vadian!这个问题在SQLite.swift的主分支上已经修复了很长时间。我想当Swift 3.0发布时也会出现类似的问题