Tentative specification for UNIX Version 7 C

Henry Spencer henry at zoo.toronto.edu
Sun Oct 28 10:04:47 AEST 1990


In article <2442.272704b8 at verifone.com> clifton_r at verifone.com writes:
>   I am posting this article as a first attempt to fill a glaring gap in
>the documentation available for the C language.

Uh, what glaring gap?  Implementors are aiming at ANSI C, which is well
documented.  People who have to use a wide variety of earlier compilers
tend to use H&S as the basic reference.  Attempting to specify a single
standard for pre-ANSI C is pointless:  the users can't rely on it because
the pre-ANSI compilers differ, and the implementors won't care because
ANSI compatibility is their major concern now and they're not interested
in conforming to a pseudo-standard that nobody else conforms to.

Incidentally, I think you are grossly underestimating the labor involved
in producing a high-quality standard.  You would be much better off to
start with ANSI C and specify deletions and modifications to it.

>     To summarize the usual V7 C extensions, this implementation of the C 
>language supports:
>  ...
>  o  the "void" data type (but not the "void *" of ANSI C);
>  o  the "signed char" type;
>  o  the "unsigned char", "unsigned short", and "unsigned long" types;
>  o  and calling of function pointers without an explicit dereference.

Here we already see the "standard" falling apart.  None of these things
were in V7 C, although some (not all!) implementors added them later.
`signed char' is particularly odd, since as far as I know `signed' was
an X3J11 invention and there were *no* pre-ANSI compilers featuring it.

Please don't try to fob off the peculiar specs of your own pet compiler
as a "standard".  Your time would be better spent fixing your compiler to
conform to the standard we already have.
-- 
The type syntax for C is essentially   | Henry Spencer at U of Toronto Zoology
unparsable.             --Rob Pike     |  henry at zoo.toronto.edu   utzoo!henry



More information about the Comp.lang.c mailing list