title: uninitialized const
body: <p>This compiles perfectly fine with the current MSVC compiler:</p>
  
  <pre><code>struct Foo
  {
  } const foo;
  </code></pre>
  
  <p>However, it fails to compile with the current g++ compiler:</p>
  
  <pre><code>error: uninitialized const 'foo' [-fpermissive]
  note: 'const struct Foo' has no user-provided default constructor
  </code></pre>
  
  <p>If I provide a default constructor myself, it works:</p>
  
  <pre><code>struct Foo
  {
      Foo() {}
  } const foo;
  </code></pre>
  
  <p>Is this another case of MSVC being too permissive, or is g++ too strict here?</p>