#include <inttypes.h> missing for 64 bit integers.
John E. Malmberg
wb8tyw at qsl.net
Sun Feb 13 14:32:19 GMT 2005
Wayne Davison wrote:
> On Sat, Feb 12, 2005 at 10:07:05PM -0500, John E. Malmberg wrote:
>
>>Rsync is not including this file, nor is there a feature test for this
>>header file in the configure phase, but rsync is using [int64 and
>>uint64].
>
> Rsync is defining its own int64 (using a define, not a typedef), so it
> is not depending on these fairly new types being found on the system
> (also, I thought they were really int64_t and uint64_t, but I could be
> wrong).
That is what the standard types are.
That define int int32 did not happen on my system for reasons that I
have not yet determined. I discovered it when the compile failed.
They do not seem to be "new" types, but common older non-standard types.
> It would probably be a good idea to add a test to configure to
> look for int64_t and make use of it, if necessary (with an appropriate
> include of inttypes.h or stdint.h, which configure already checks for,
> but rsync.h doesn't currently use). The latest code no longer uses
> uint64.
int8, int16, int32, int64, etc... on my system are in the header file
ints.h.
As near as I can determine from google:
For BEOS those definitions are in support/SupportDefs.h
For HP-UX those definitions are in model.h
Linux also seems to have ints.h. At the present time, I do not have
quick access to inspect the contents.
-John
wb8tyw at qsl.net
Personal Opinion Only
More information about the rsync
mailing list