title: C++11 - declaring non-static data members as 'auto'
body: <p>Does C++11 allow declaring non-static data members as 'auto' if they are initialized in the declaration? For example:</p>
  
  <pre><code>struct S
  {
      auto x = 5;  // in place of 'int x = 5;', which is definitely allowed
  };
  </code></pre>
  
  <p>GCC 4.7 rejects the above code, while it accepts <code>int x = 5;</code>.</p>
  
  <p>Assuming this is not a compiler bug but rather the standard really doesn't allow it, why not? It would be just as useful as declaring local variables <code>auto</code>.</p>