Der folgende Code kompiliert mit GCC fein:GCC akzeptiert `Constexpr struct {} s;` aber Clang lehnt es ab. Wer hat Recht?
constexpr struct {} s;
Aber Clang lehnt es mit dem folgenden Fehler:
error: default initialization of an object of const type 'const struct (anonymous struct at …)' without a user-provided default constructor
ich getestet habe alle Versionen von GCC und Clang, die ich in der Lage war zu finden https://gcc.godbolt.org/. Jede Version von GCC akzeptiert den Code und jede Version von Clang weist ihn zurück.
Ich frage mich, welche Compiler in diesem Fall korrekt ist?
Was sagt der Standard dazu?
Versuchen Sie clang-3,9? –
[CWG253] (http://wg21.link/CWG253). –
@ T.C. http://stackoverflow.com/questions/29683381/const-t-works-const-t-fails-when-t-is-a-non-pod#comment47503814_29683381 – Columbo