#ifndef CORE_NEW_HPP #define CORE_NEW_HPP using size_t = decltype(sizeof(0)); struct NoThrow { explicit NoThrow() = default; }; [[maybe_unused]] static constexpr NoThrow noThrow; void* operator new(size_t bytes, const NoThrow&) noexcept; void* operator new[](size_t bytes, const NoThrow&) noexcept; void operator delete(void* p) noexcept; void operator delete[](void* p) noexcept; void operator delete(void* p, size_t bytes) noexcept; void operator delete[](void* p, size_t bytes) noexcept; void* operator new(size_t bytes, void* p) noexcept; #endif