In theory, the void parameter may be required by some later version of the C standard since:Originally Posted by Mario F.
My reasoning is that the void parameter would fall under "prototype-format parameter type declarators", whereas an empty parameter list would actually be an empty identifier list, and hence is obsolescent under 6.11.7. In practice I think they will retain this status for a long while since there's some convenience for allowing what C++ allows (and in fact typically C++ programmers prefer not to use void) to cater to programs intended to be compiled as C and C++ as the case may be.Originally Posted by C11