> >>>>> "Jan" == Jan Harkes <[EMAIL PROTECTED]> writes:
>
>     Jan> only the 'long' datatype is difficult because (afaik) it is
>     Jan> defined as the size required to store a pointer.
>
> I don't think there's really a common agreement on that, either.  In
> particular ISTR that fails on the IA64 with function pointers.

I don't know anything about IA64 (and why that should fail), but probably
stdint.h is the best reference for such a discussion; it seems as if Jan
were right, but IMHO the c99-standard does not specify such a thing since
it only requires long to be large enough to store the usual 32-bit
numbers.

Isn't the userland/kernel-interface the problem? What about moving
int,long to consistent declarations of int32_t, int64_t etc.? Furthermore
it is problably acceptable to cast all (userland)pointers to u_int64_t to
allow 32-bit userland on 64-bit kernels!?

-- Michael


Reply via email to