GCC accepts `constexpr struct {} s;` but Clang rejects it. Who is correct?
<p>The following code compiles fine with GCC:</p>

<pre><code>constexpr struct {} s;
</code></pre>

<p>But Clang rejects it with the following error:</p>

<blockquote>
  <p>error: default initialization of an object of const type 'const struct (anonymous struct at …)' without a user-provided default constructor</p>
</blockquote>

<p>I've tested all versions of GCC and Clang that I was able to find at <a href="https://gcc.godbolt.org/">https://gcc.godbolt.org/</a>. Each version of GCC accepts the code and each version of Clang rejects it.</p>

<p><strong>I wonder which compiler is correct in this case?<br>
What does the standard say about this?<br></strong></p>