title: int q = {1,2}; peculiar initialization list
body: <p>I came across the below initialization , it is seen that VS2012
   shows an error complaining about too many initializers. in GCC it seems to
   return the first element as the value. </p>
  
  <p>why is this peculiar initialization supported  in GCC?</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main()
  {
      int q = {1,2};
      char c = {'s','t','\0'};  /* c is 's' */
      printf("%d\n",q); /* prints 1*/
  }
  </code></pre>