diff --git a/libs/sqlite/src/os.h b/libs/sqlite/src/os.h index 0fe7b156ee..4101fdf959 100644 --- a/libs/sqlite/src/os.h +++ b/libs/sqlite/src/os.h @@ -64,6 +64,7 @@ # define SQLITE_TEMPNAME_SIZE (CCHMAXPATHCOMP) #else # define SQLITE_TEMPNAME_SIZE 200 +# include #endif /* If the SET_FULLSYNC macro is not defined above, then make it diff --git a/libs/sqlite/src/vdbemem.c b/libs/sqlite/src/vdbemem.c index 87059c8a8d..302fd89d08 100644 --- a/libs/sqlite/src/vdbemem.c +++ b/libs/sqlite/src/vdbemem.c @@ -760,7 +760,7 @@ const void *sqlite3ValueText(sqlite3_value* pVal, u8 enc){ pVal->flags |= (pVal->flags & MEM_Blob)>>3; if( pVal->flags&MEM_Str ){ sqlite3VdbeChangeEncoding(pVal, enc & ~SQLITE_UTF16_ALIGNED); - if( (enc & SQLITE_UTF16_ALIGNED)!=0 && 1==(1&(int)pVal->z) ){ + if( (enc & SQLITE_UTF16_ALIGNED)!=0 && 1==(1&(int)(intptr_t)pVal->z) ){ assert( (pVal->flags & (MEM_Ephem|MEM_Static))!=0 ); if( sqlite3VdbeMemMakeWriteable(pVal)!=SQLITE_OK ){ return 0; @@ -770,7 +770,7 @@ const void *sqlite3ValueText(sqlite3_value* pVal, u8 enc){ }else{ assert( (pVal->flags&MEM_Blob)==0 ); sqlite3VdbeMemStringify(pVal, enc); - assert( 0==(1&(int)pVal->z) ); + assert( 0==(1&(int)(intptr_t)pVal->z) ); } assert(pVal->enc==(enc & ~SQLITE_UTF16_ALIGNED) || sqlite3MallocFailed() ); if( pVal->enc==(enc & ~SQLITE_UTF16_ALIGNED) ){ diff --git a/libs/sqlite/src/vtab.c b/libs/sqlite/src/vtab.c index c08752aeb5..9661941f5e 100644 --- a/libs/sqlite/src/vtab.c +++ b/libs/sqlite/src/vtab.c @@ -15,6 +15,7 @@ */ #ifndef SQLITE_OMIT_VIRTUALTABLE #include "sqliteInt.h" +#include "os.h" /* ** External API function used to create a new virtual-table module. @@ -562,7 +563,7 @@ int sqlite3VtabSync(sqlite3 *db, int rc2){ ** sqlite3.aVTrans array. Then clear the array itself. */ int sqlite3VtabRollback(sqlite3 *db){ - callFinaliser(db, (int)(&((sqlite3_module *)0)->xRollback)); + callFinaliser(db, (int)(intptr_t)(&((sqlite3_module *)0)->xRollback)); return SQLITE_OK; } @@ -571,7 +572,7 @@ int sqlite3VtabRollback(sqlite3 *db){ ** sqlite3.aVTrans array. Then clear the array itself. */ int sqlite3VtabCommit(sqlite3 *db){ - callFinaliser(db, (int)(&((sqlite3_module *)0)->xCommit)); + callFinaliser(db, (int)(intptr_t)(&((sqlite3_module *)0)->xCommit)); return SQLITE_OK; }