I think the answer is 'it depends'. - such prototypes are not required by C99. - using (void) is part of some authors' style and not of others. For the latter, this is not an 'oversight' but an uglification. - in some cases the omission is deliberate as the function is used for variable sets of arguments (e.g, in GraphicsDevice.h). - in others the omission is because it seemed safer to leave the prototype out than to get it wrong (when passing functions, for example). - some code is taken from other projects and still has K&R style declarations.
On Sun, 27 Jan 2008, Laurent Gautier wrote: > Dear list, > > Whenever the flag "-Wstrict-prototypes" is set in gcc, compiling code that > includes headers in lib/R/include generates often warnings > (example with R-2.6.1: > Rinternals.h:560: warning: function declaration isn't a prototype > ). > > All such warnings I looked at were about functions with empty > signatures declared > as "bar foo();" rather than "bar foo(void);". Is there a reason, or is > this just an oversight in the include files ? It seems you were rather selective in your looking. > > Thanks, > > > Laurent -- Brian D. Ripley, [EMAIL PROTECTED] Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel