https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109623
Bug ID: 109623 Summary: constexpr restrictions are not relaxed enough Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: oleksandr.koval.dev at gmail dot com Target Milestone: --- https://godbolt.org/z/eo8K3Ehqq ```cpp #include <unordered_map> struct S{ constexpr S() = default; // error, not implicitly constexpr constexpr S(){} // this works std::unordered_map<int, int> m; }; ``` My understanding is that in C++23 this should be allowed because the only restriction for constexpr constructors and destructors is the absence of virtual base classes.