17 Language support library [support]

17.6 Dynamic memory management [support.dynamic]

17.6.4 Storage allocation errors [alloc.errors] Type new_handler [new.handler]

using new_handler = void (*)();
The type of a handler function to be called by operator new() or operator new[]() ([new.delete]) when they cannot satisfy a request for additional storage.
Required behavior: A new_handler shall perform one of the following:
  • make more storage available for allocation and then return;
  • throw an exception of type bad_alloc or a class derived from bad_alloc;
  • terminate execution of the program without returning to the caller.