Hello list

 

Has anyone tried compiling SQLite with gcc versions 4.5.1 or 4.6?

 

Using amalgamated SQLite version 3.6.23.1 with -DSQLITE_INT64_TYPE=long
(to work on 32-bit embedded system), I see the following errors:

 

NX/MAIN/opentv/external/opensrc/sqlite/sqlite3.c: In function
'doubleToInt64':

NX/MAIN/opentv/external/opensrc/sqlite/sqlite3.c:47670:3: warning: left
shift

count >= width of type

NX/MAIN/opentv/external/opensrc/sqlite/sqlite3.c:47670:3: error:
initializer

element is not computable at load time

NX/MAIN/opentv/external/opensrc/sqlite/sqlite3.c:47671:3: warning: left
shift

count >= width of type

NX/MAIN/opentv/external/opensrc/sqlite/sqlite3.c:47671:3: error:
initializer

element is not computable at load time

 

With this modification, it compiles:

#define LARGEST_INT64 ((i64)0x7fffffff)

instead of

#define LARGEST_INT64 (0xffffffff|(((i64)0x7fffffff)<<32))

 

With earlier versions of gcc this results in a warning rather than an
error. I have not tried the latest version of SQLite, but I don't see
any difference in the definition of LARGEST_INT64.

 

Cheers,

Dave.

 

_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to