From 6a26e21416755035b3c77e9c299b9a040f414b4c Mon Sep 17 00:00:00 2001 From: Kevin Burke Date: Thu, 1 Nov 2018 18:03:02 -1000 Subject: [PATCH] all: fix cgo compile failures on tip Apparently the cgo typechecks get better on tip, so use C.int instead of Go integers. Build tip as part of the Travis build, so we can ensure that any errors are resolved before they get released to a wider audience. --- .travis.yml | 3 ++- callback.go | 2 +- sqlite3.go | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2ae08be..b5c249e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,10 +19,11 @@ go: - 1.9.x - 1.10.x - 1.11.x + - master before_install: - | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then + if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update fi - | diff --git a/callback.go b/callback.go index 2c68973..e8c492b 100644 --- a/callback.go +++ b/callback.go @@ -368,7 +368,7 @@ func callbackRet(typ reflect.Type) (callbackRetConverter, error) { func callbackError(ctx *C.sqlite3_context, err error) { cstr := C.CString(err.Error()) defer C.free(unsafe.Pointer(cstr)) - C.sqlite3_result_error(ctx, cstr, -1) + C.sqlite3_result_error(ctx, cstr, C.int(-1)) } // Test support code. Tests are not allowed to import "C", so we can't diff --git a/sqlite3.go b/sqlite3.go index 942b0b5..d75e8b0 100644 --- a/sqlite3.go +++ b/sqlite3.go @@ -1674,7 +1674,7 @@ func (c *SQLiteConn) prepare(ctx context.Context, query string) (driver.Stmt, er defer C.free(unsafe.Pointer(pquery)) var s *C.sqlite3_stmt var tail *C.char - rv := C._sqlite3_prepare_v2_internal(c.db, pquery, -1, &s, &tail) + rv := C._sqlite3_prepare_v2_internal(c.db, pquery, C.int(-1), &s, &tail) if rv != C.SQLITE_OK { return nil, c.lastError() } @@ -1718,7 +1718,7 @@ func (c *SQLiteConn) GetFilename(schemaName string) string { // GetLimit returns the current value of a run-time limit. // See: sqlite3_limit, http://www.sqlite.org/c3ref/limit.html func (c *SQLiteConn) GetLimit(id int) int { - return int(C._sqlite3_limit(c.db, C.int(id), -1)) + return int(C._sqlite3_limit(c.db, C.int(id), C.int(-1))) } // SetLimit changes the value of a run-time limits.