Subject: Re: Tcl7.5 and NetBSD-current
To: Peter Seebach <seebs@solon.com>
From: Don Lewis <gdonl@gv.ssi1.com>
List: current-users
Date: 02/28/1996 16:58:01
On Feb 28,  6:31am, Peter Seebach wrote:
} Subject: Re: Tcl7.5 and NetBSD-current
} 
} It is legit for opaque types to be larger than long, maybe, but it's not
} legit for there to be syntax errors in the header.  I'd be fine with
} __int64_t.

I have no problem with defining off_t as a __int64_t on machines with
32 bit longs instead of using "long long".

} No... I think long should be the longest type, and int the most comfortable
} type (but possibly 32 bits on the alpha, just so there's enough types to
} go around.)  That should hold us until ANSI fixes it for C9X.

I think long should be 64 bits on the Alpha, R4xxx, Sparc V9, etc. and
32 bits elsewhere.  I think int should be 32 bits on all platforms so
that we don't waste too much memory.

} As noted, this can create significant problems for programs that expect
} tolerable performance using long,

I have a problem with this.

} and break naive software that expects
} long and int, or long and (void *), to be the same type.

I don't really have a problem with this.

} In defense of performance, the original reference implementation had 16
} bit ints and 32 bit longs on a machine where 8 bits was the natural size.

If you are thinking of the PDP-11, the natural size was 16 bits.  The
32 bit longs weren't too painful because the 11 has add with carry and
subtract with borrow instructions, and it does 16x16->32 multiplies and
32/16->16 divides.  I suspect most of our 32 bit platforms don't have
the equivalent capabilities.

			---  Truck