Subject: Re: C Language Standard(s)
To: None <current-users@NetBSD.ORG>
From: Peter Seebach <seebs@solon.com>
List: current-users
Date: 12/21/1995 06:32:35
>No offense, Peter, but get over it.   The long long type has been
>around for on the order of five years now.   It's not likely to go
>away.   You and several other people are right that casts of pointers
>to integers are evil, but historically they've also been more
>portable.   As a consequence, a lot of very useful code out there
>depends on them.   If we break them, nobody will come.

What code is there that isn't ours to patch that depends on this?  I haven't
seen any in ages, unless it's in emacs or gcc.  (And gcc has probably been
fixed, for the Alpha port.)

I have little problem with revealing broken software.  NetBSD has already
made it clear that it's a designed system, not an end-user system.  :)

Also, AFAIK, if we use 32-bit int, and 64-bit long, the only place
casting pointers to integers will fail will be a 64-bit pointer environment.

In the only 64-bit pointer environment we support that I know of, the
standard compiler has already broken that code; OSF/1 uses 16/32/64.

I think this would be a good long-term direction; not something to try
to push for an instant conversion of, but add to the coding standards
that code outside of machine specifics shall not try to make pointers
integers, nor integers pointers, and start periodically cleaning them
up.

-s