Unless I am seriously mistaken in my understanding of prototypes, our version
of gcc produces an error in what I believe is a correct program.
Try the following:
extern int foo ( short );
int foo(x)
short x;
{ ; }
I get a message that the argument doesn't match the prototype.
Works fine if I use int in place of short.
Anybody know if this has been fixed?