summaryrefslogtreecommitdiff
path: root/src/utils.cc
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2014-05-07 20:49:45 +0000
committerJohn Wiegley <johnw@newartisans.com>2014-05-07 20:49:45 +0000
commit1aa0e03a9e7f9f1a51395a60fc1336bea3ca2aa9 (patch)
tree0e688725083f7be4610ec0a193cceadb05b1eb8d /src/utils.cc
parent73caafa2c540384f19669567ed95b598fcf42463 (diff)
downloadfork-ledger-1aa0e03a9e7f9f1a51395a60fc1336bea3ca2aa9.tar.gz
fork-ledger-1aa0e03a9e7f9f1a51395a60fc1336bea3ca2aa9.tar.bz2
fork-ledger-1aa0e03a9e7f9f1a51395a60fc1336bea3ca2aa9.zip
Fix build for building with g++ 4.8
Diffstat (limited to 'src/utils.cc')
-rw-r--r--src/utils.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/utils.cc b/src/utils.cc
index 2256d22a..741ce79d 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -229,7 +229,11 @@ static void trace_delete_func(void * ptr, const char * which)
//#if !defined(__has_feature) || !__has_feature(address_sanitizer)
+#ifdef _GLIBCXX_THROW
+void * operator new(std::size_t size) _GLIBCXX_THROW(std::bad_alloc) {
+#else
void * operator new(std::size_t size) throw (std::bad_alloc) {
+#endif
void * ptr = std::malloc(size);
if (DO_VERIFY() && ledger::memory_tracing_active)
ledger::trace_new_func(ptr, "new", size);
@@ -241,7 +245,11 @@ void * operator new(std::size_t size, const std::nothrow_t&) throw() {
ledger::trace_new_func(ptr, "new", size);
return ptr;
}
+#ifdef _GLIBCXX_THROW
+void * operator new[](std::size_t size) _GLIBCXX_THROW(std::bad_alloc) {
+#else
void * operator new[](std::size_t size) throw (std::bad_alloc) {
+#endif
void * ptr = std::malloc(size);
if (DO_VERIFY() && ledger::memory_tracing_active)
ledger::trace_new_func(ptr, "new[]", size);