On tis, 2007-07-31 at 21:09 +0000, chtsanti wrote:

> - Some convertions of variables to 64bit integers, for which I am not
> sure if really needed but they used to hold results of 64bit
> operations and I think it is not safe to downgrade 64bit integers ...

Please avoid casting unless needed. The compiler automatically promotes
to larger types when needed, and will tell you if you try to do the
reverse..

So stop casting things to (int64_t).

The exception is the upshifts if the value shifted may be large. But I
think these should be changed to store bytes to begin with avoiding the
problem. It's really more of a theoretical configuration limitation than
a real limitation. It's very unlikely anyone would want to configure
readahead_gap or quick_abort_min/max as large as 2 GB or more..

So make 

Config.readAheadGap and Config.quickAbort.min/max  b_size_t instead of
kb_size_t, and stop upshifting it to compare... Maybe even should be a
b_int64_t.

Probably we should even kill the kb_size_t type entirely, converting
them all to b_int64_t.


Focus on killing casts when not absolutely needed. Casts makes it nearly
impossible to find problems using automated methods..

Regards
Henrik

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to