<!DOCTYPE qhelp PUBLIC
  "-//Semmle//qhelp//EN"
  "qhelp.dtd">
<qhelp>


<overview>
<p>A function is called with more arguments than there are parameters of the function.</p>

<p>This may indicate that an incorrect function is being called, or that the signature
 (parameter list) of the called function is not known to the author.</p>

<p>In C, function calls generally need to provide the same number of arguments as there are
 arguments to the function. (Variadic functions can accept additional arguments.)  Providing
 more arguments than there are parameters incurs an unneeded computational overhead, both
 in terms of time and of additional stack space.</p>
 
</overview>
<recommendation>
<p>Call the function with the correct number of arguments.</p>

</recommendation>
<example><sample src="TooManyArguments.c" />

</example>

<references>
<li>SEI CERT C Coding Standard: <a href="https://wiki.sei.cmu.edu/confluence/display/c/DCL20-C.+Explicitly+specify+void+when+a+function+accepts+no+arguments"> DCL20-C. Explicitly specify void when a function accepts no arguments </a></li>
</references>
</qhelp>
