Log Message: |
64-bit quantities, i.e. int64_t, differ on i386 and amd64.
In the first case it's an alias for long long, but in the second
case it's an alias for long.
The solution seems to be twofold: (1) use printf length modifier for
(unsigned) long long, and (2) explicitly cast each 64-bit quantity
to (unsigned) long long.
Tested on FreeBSD/i386 stable/8 r255624 with gcc 4.2.1.
Tested on FreeBSD/amd64 stable/9 r263963 with clang 3.3.
Tested on FreeBSD/amd64 stable/9 r263963 with clang 3.3 using -m32.
|