"Tony Lewis" <[EMAIL PROTECTED]> writes: > A patch was recently submitted for this issue. I don't know if > anything has made it into the CVS or not. Hrvoje didn't like its > dependence on "long long" so it might not have.
The patch uses `long long' without bothering to check whether the compiler accepts it. This is bad because, except for GCC, `long long' is a fairly recent invention (and people on 64-bit platforms might argue that they don't even need it because they have 64-bit `long'.) Large-file aware application should use off_t instead, and be written to work well regardless of its size. Portable printing of off_t values is tricky, but it can be done. The patch goes ahead and simply assumes that `long long' is 64 bits wide, which need not be the case. It changes %ld format to %lld, which invalidates every single available translation. I asked the submitters about this, but they never responded, which indicates that they either don't understand the problem or don't care about fixing it.