You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.4 KiB

// -*- c++ -*-
// C++11 18.6, minus new_handler
#pragma once
#include <exception>
namespace std {
class bad_alloc : public exception
{
public:
bad_alloc() noexcept { }
bad_alloc(const bad_alloc&) noexcept { }
bad_alloc& operator=(const bad_alloc&) noexcept
{
return *this;
}
virtual const char* what() const noexcept
{
return "allocation failed";
}
};
class bad_array_new_length : public bad_alloc
{
public:
bad_array_new_length() noexcept { }
};
struct nothrow_t {
nothrow_t() {}
};
extern const nothrow_t nothrow;
//typedef void (*new_handler)();
//new_handler get_new_handler() noexcept;
//new_handler set_new_handler(new_handler new_p) noexcept;
}
void* operator new(std::size_t size);
void* operator new(std::size_t size, const std::nothrow_t&) noexcept;
void operator delete(void* ptr);
void operator delete(void* ptr, const std::nothrow_t&) noexcept;
void* operator new[](std::size_t size);
void* operator new[](std::size_t size, const std::nothrow_t&) noexcept;
void operator delete[](void* ptr);
void operator delete[](void* ptr, const std::nothrow_t&) noexcept;
void* operator new(std::size_t size, void* ptr) noexcept;
void* operator new[](std::size_t size, void* ptr) noexcept;
void operator delete(void* ptr, void*) noexcept;
void operator delete[](void* ptr, void*) noexcept;