freetype
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft] Why is FT_F26Dot6 defined as a signed long


From: Lawrence D'Oliveiro
Subject: Re: [ft] Why is FT_F26Dot6 defined as a signed long
Date: Fri, 15 Feb 2019 09:14:04 +1300

On Thu, 14 Feb 2019 11:58:09 -0800, Wink Saville wrote:

> Interesting, but on a 32bit platform, with long == 32 bits, that
> wouldn't work.

There is this thing called “LP64” versus “LLP64”, for describing code
generation on 64-bit architectures. GCC (and I think all the other
compilers that work on Linux) is “LP64”, which means that “long” and
pointers are both 64 bits. On Windows, it seems “LLP64” is the norm,
where “long” is 32 bits and you need to say “long long” to get 64 bits.

C99 introduced the stdint.h include file, which gives explicit names to
you can use to request particular sizes of integers, to avoid this
discrepancy.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]