title: Why is this valid C
body: <p>I came across this code on <a href="http://www.reddit.com/r/programming/comments/r55bo/what_does_0_mean_in_c_stack_overflow/c430cp2">reddit</a>. I would have thought that type conversions would have caused this to be invalid.</p>
  
  <pre><code>int a[3] = { { {1, 2}, {3, 4}, 5, 6 }, {7, 8}, {9}, 10 };
  </code></pre>
  
  <p>On clang, I get a few warnings about excessive elements and braces in a scalar initializer. But the contents of <code>a</code> is <code>[1, 7, 9]</code>.</p>
  
  <p>Is this actually legitimate, and if it is, could someone explain what exactly is going on? </p>