S
Seebs
So Schildt's book is working to the the 1999 standard. Now we know
that does it increas or decrease the number of errors?
3rd edition, which came out in 1995, obviously was not working to the
1999 standard. Amusingly, the 4th edition, which was working to the
1999 standard, removed the spurious claim that you could use "void main".
There is really no difference between the two specs, except for the
clarification that implementations are obliged to define any other
signatures... But note that there's really no teeth to that.
Consider.
What if an implementation does *not* define any other form of main(),
but then cheerfully accepts:
double main(double x)
?
The program isn't particularly strictly conforming, and I don't think
it violates a constraint (?), so I don't think anything the implementation
does, including accepting the program and producing code which meets
the user's expectations, violates anything.
All C99 did was strongly hint that, if you were accepting other
forms of main(), you ought to document them.
-s