[diff.cpp11.basic] (original) (raw)

Affected subclause: [basic.stc.dynamic.deallocation]

Change: New usual (non-placement) deallocator.

Rationale: Required for sized deallocation.

Effect on original feature: Valid C++ 2011 code can declare a global placement allocation function and deallocation function as follows:void* operator new(std::size_t, std::size_t);void operator delete(void*, std::size_t) noexcept;

In this revision of C++, however, the declaration of operator deletemight match a predefined usual (non-placement)operator delete ([basic.stc.dynamic]).

If so, the program is ill-formed, as it was for class member allocation functions and deallocation functions ([expr.new]).