Because a long
is 32 bits in the ILP32 model and 64 bits in the
LP64 model, there might be cases where what was previously defined as a long
is neither appropriate nor necessary. In this case, it might be possible to
use a more portable derived type.
Related to this, a number of derived types might have changed under the LP64
data model for the reason stated above. For example, pid_t
remains a long
in the 32-bit environment, but under the 64-bit environment, a pid_t
is an int
. For a list of derived types modified for the
LP64 compilation environment, see Appendix A, Changes in Derived Types.