On Thu, Jun 08, 2006 at 07:58:23AM +0200, Bastian Blank wrote: > On Wed, Jun 07, 2006 at 11:53:24PM +0100, Darren Salt wrote: > > The others are trivially fixable; of these, the one in libavcodec is already > > fixed in CVS. I've committed the rest (they're basically s/int/long/) and am > > forwarding them appropriately. > > long is not appropriate to save pointers, you need to use intptr_t or > uintptr_t.
C90 basically promised it would work, and it is widely considered a bug in C99 that there is no such guarantee. sizeof(void*) == sizeof(long) is also assumed all over the place in Linux, and there is not a chance in hell that will ever change. The only relevant system that does not have sizeof(void*) == sizeof(long) is 64-bit windows. So in summary, if you don't care about portability to 64-bit windows, assuming sizeof(void*) == sizeof(long) is just fine. -- Falk -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]