GCC接受`constexpr struct {};`但Clang拒绝它。 谁是正确的?

下面的代码用GCC编译得很好:

constexpr struct {} s; 

但铿锵拒绝它与以下错误:

错误:默认初始化一个consttypes为“const struct(anonymous struct at …)”的对象,没有用户提供的默认构造函数

我已经testing了所有版本的GCC和Clang,我可以在https://gcc.godbolt.org/find。 GCC的每个版本都接受代码,Clang的每个版本都拒绝它。

我想知道哪种编译器在这种情况下是正确的?
标准对此有何评论?

Clang在[dcl.init] / 7中遵循以下段落:

如果一个程序调用一个const限定typesT的对象的默认初始化, T应该是一个具有用户提供的默认构造函数的类types。

这个措辞是有缺陷的 , 因此被海合会忽略了 (从3.1版开始,也是由Clang )。
上述报价与核心问题253有所不同,原因在于N2762如上所述移动/调整第9段。