https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111854
Bug ID: 111854 Summary: new align_val_t usual deallocation Product: gcc Version: 13.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: barry.revzin at gmail dot com Target Milestone: --- gcc accepts this program (copied from the MSVC documentation for https://learn.microsoft.com/en-us/cpp/error-messages/compiler-errors-2/compiler-error-c2956?view=msvc-170) without any warning or error: #include <new> struct T {}; int main() { T* p = new (std::align_val_t{64}) T; // C2956 delete p; // ordinary, not over-aligned delete } But this should be ill-formed, violating: https://eel.is/c++draft/expr.new#28.sentence-3