This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: Cygwin 64 bit?


On 06/28/2011 06:31 AM, Earnie wrote:
> just, well, ignorant and I agree that the sizeof(long) == sizeof(void *)
> makes sense except for the fact that the C standard states in the final
> draft version in section 5.2.4.2.1 the size of data type long is 2^32 -
> 1 and defines long long as 2^64 - 1.

Those are minimum compliant sizes, not absolutes.  A 64-bit long is
perfectly legal by the C standard.  Likewise, a 16-bit int is perfectly
legal by the C standard, even though these days int is almost always
32-bits.

>  It doesn't account for the
> variance in the sizeof(void *) except to say that it is equivalent to
> size of any other pointer of any other data type.  Because of this LLP64
> makes a lot of sense.

In my mind, LLP64 makes absolutely zero sense.  Microsoft broke lots of
programs that previously used to assume that any pointer could be
converted to a long and back.  LP64 is the way to go for cygwin.

-- 
Eric Blake   eblake@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]