On Tue, Jun 28, 2005 at 06:10:26PM +0100, Dave Korn wrote: > >>> - sizeof(int) == 4, sizeof(long long) == 8 > >>> > >>> - sizeof(long) == sizeof(void *) == sizeof(void (*)())
> >> And what about 64 bit architectures? Your assumptions are already > >> widely invalid and only going to get more so. > > > > No, all of Olivier's assumptions are valid on LP64 as well as ILP32 > > architectures. > > Well, they're invalid on ILP64, but I guess Cray and Alpha T3E aren't very > widespread platforms. But we can expect that ILP64 will become more widely > used in the future, when the migration from 32-bit platforms starts to > become nothing more than a distant memory, can't we? No, it's going to be LP64 (with I=32), and I don't see a reason for that ever to go away. 32-bit integers are going to remain useful types, and LP64 architectures finally have char = 8, short = 16, int = 32, long = 64, which is too useful to break. Why would anyone now switch int to 64?