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]
-----------------------------------------------------------------------------

Reply via email to