I have submitted it as ticket #2089 and named it "decoupling sqlite_int64 from other 64 bit datatypes". I also made another few changes and now make test reports even fewer errors than before (attached in the ticket). The only cases it fails are when using big files and when the integer values don't fit into 32 bit (these are now handled as floating point values in most cases). Please have a look.
I believe the tester in the previous thread did not check with floating point values (or the architecture he was testing on used only 4 byte floats). The shifting 32 bits left issue might actually work okay for most compilers as they simply ignore the shifting and something like ((x << 32) | y) has the same result as (x | y). When the database does not contain any true 64bit integers then x will always be zero and the ORing will not cause any harm. But generally speaking a compiler might give unpredictable results for such shifting oparations (as you pointed out) and the result should not be used in furter computations. Best regards, Steffen ____________________________________________________________________________________ Yahoo! Music Unlimited Access over 1 million songs. http://music.yahoo.com/unlimited ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------