@neauoire A function taking no parameters needs to be explicitly declared as such by giving it the void type parameter.
@kvik I had no idea until today. I'll be more careful. I have a ton of something(), I don't remember tcc ever complaining, so I never knew.
@henesy @neauoire If I'm reading the standard right, (http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf section 184.108.40.206. points 10 and 14) a declaration with an empty parameter type list should mean the same as void fn(...); which means unknown number and types of arguments. Presumably you then could use va_arg facility in its definition.
In any case void fn() and void fn(void) are of different types.
"I appreciate SDF but it's a general-purpose server and the name doesn't make it obvious that it's about art." - Eugen Rochko