Guard some function definitions for ASan

This commit is contained in:
John Wiegley 2012-07-30 23:24:15 -05:00
parent 14ab4f7775
commit 8538878d8d

View file

@ -153,6 +153,8 @@ std::size_t current_memory_size()
return memory_size;
}
#if !defined(__has_feature) || !__has_feature(address_sanitizer)
static void trace_new_func(void * ptr, const char * which, std::size_t size)
{
if (! live_memory || ! memory_tracing_active) return;
@ -221,8 +223,12 @@ static void trace_delete_func(void * ptr, const char * which)
memory_tracing_active = true;
}
#endif // !defined(__has_feature) || !__has_feature(address_sanitizer)
} // namespace ledger
#if !defined(__has_feature) || !__has_feature(address_sanitizer)
void * operator new(std::size_t size) throw (std::bad_alloc) {
void * ptr = std::malloc(size);
if (DO_VERIFY() && ledger::memory_tracing_active)
@ -268,6 +274,8 @@ void operator delete[](void * ptr, const std::nothrow_t&) throw() {
std::free(ptr);
}
#endif // !defined(__has_feature) || !__has_feature(address_sanitizer)
namespace ledger {
namespace {