CloverBootloader/rEFIt_UEFI/cpp_util/operatorNewDelete.cpp
Sergey Isakov 282bc531d7 fix GCC53 compatibility
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-02-25 20:42:06 +03:00

40 lines
678 B
C++
Executable File

#include <Platform/Platform.h>
#if 0
#define DBG(...) DebugLog(2, __VA_ARGS__)
#else
#define DBG(...)
#endif
#if defined(_MSC_VER)
void* operator new (size_t count)
#else
void* operator new (unsigned long count)
#endif
{
void* ptr = AllocatePool(count);
if ( !ptr ) {
DebugLog(2, "AllocatePool(%d) returned NULL. Cpu halted\n", count);
CpuDeadLoop();
}
return ptr;
}
#ifdef _MSC_VER
#pragma warning(disable : 4577)
#endif
void operator delete ( void* ptr ) noexcept
{
return FreePool(ptr);
}
#ifdef _MSC_VER
void _cdecl operator delete (void * ptr, unsigned __int64 count)
#else
void operator delete (void * ptr, UINTN count)
#endif
{
return FreePool(ptr);
}