title: Passing too many arguments to printf
body: <p>Any C programmer who's been working for more than a week has encountered crashes that result from calling <code>printf</code> with more format specifiers than actual arguments, e.g.:</p>
  
  <pre><code>printf("Gonna %s and %s, %s!", "crash", "burn");
  </code></pre>
  
  <p>However, are there any similar bad things that can happen when you pass <em>too many</em> arguments to printf?</p>
  
  <pre><code>printf("Gonna %s and %s!", "crash", "burn", "dude");
  </code></pre>
  
  <p>My knowledge of x86/x64 assembly leads me to believe that this is harmless, though I'm not convinced that there's not some edge condition I'm missing, and I have no idea about other architectures. Is this condition guaranteed to be harmless, or is there a potentially crash-inducing pitfall here, too?</p>