summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJP Cimalando2017-06-18 22:34:59 +0200
committerJP Cimalando2017-06-18 22:34:59 +0200
commit930b4e7386b99dac4e60f0356243316ae5f8f5f6 (patch)
treed7f82c60d642a08711421236736618225088f8e9
parent90e2d0a3c977ab9155bfb1d371ffff7b19c71be2 (diff)
downloadaur-930b4e7386b99dac4e60f0356243316ae5f8f5f6.tar.gz
fix a mismatch of operator new/delete
-rw-r--r--flext-cpp11.patch41
1 files changed, 39 insertions, 2 deletions
diff --git a/flext-cpp11.patch b/flext-cpp11.patch
index cda7e2655663..23d30e9eb8f8 100644
--- a/flext-cpp11.patch
+++ b/flext-cpp11.patch
@@ -1,8 +1,33 @@
diff --git a/source/flsupport.h b/source/flsupport.h
-index e6a7678..ebf7409 100644
+index e6a7678..b016264 100644
--- a/source/flsupport.h
+++ b/source/flsupport.h
-@@ -118,7 +118,10 @@ public:
+@@ -63,9 +63,11 @@ public:
+ #ifdef FLEXT_USE_CMEM
+ inline void *operator new(size_t bytes) { return ::operator new(bytes); }
+ inline void operator delete(void *blk) { ::operator delete(blk); }
++ inline void operator delete(void *blk, size_t) { ::operator delete(blk); }
+
+ inline void *operator new[](size_t bytes) { return ::operator new[](bytes); }
+ inline void operator delete[](void *blk) { ::operator delete[](blk); }
++ inline void operator delete[](void *blk, size_t) { ::operator delete[](blk); }
+
+ static bool MemCheck(void *) { return true; }
+ #else
+@@ -76,10 +78,12 @@ public:
+ void *operator new(size_t bytes);
+ //! Overloaded delete method
+ void operator delete(void *blk);
++ void operator delete(void *blk, size_t) { operator delete(blk); }
+
+ #ifndef __MRC__ // doesn't allow new[] overloading?!
+ inline void *operator new[](size_t bytes) { return operator new(bytes); }
+ inline void operator delete[](void *blk) { operator delete(blk); }
++ inline void operator delete[](void *blk, size_t) { operator delete(blk); }
+ #endif
+
+ #ifdef FLEXT_DEBUGMEM
+@@ -118,7 +122,10 @@ public:
// MFC doesn't like global overloading of allocators
// anyway, who likes MFC
@@ -14,3 +39,15 @@ index e6a7678..ebf7409 100644
#define NEWTHROW throw(std::bad_alloc)
#define DELTHROW throw()
#else
+@@ -129,9 +136,11 @@ public:
+ // define global new/delete operators
+ inline void *operator new(size_t bytes) NEWTHROW { return flext_root::operator new(bytes); }
+ inline void operator delete(void *blk) DELTHROW { flext_root::operator delete(blk); }
++inline void operator delete(void *blk, size_t) DELTHROW { flext_root::operator delete(blk); }
+ #ifndef __MRC__ // doesn't allow new[] overloading?!
+ inline void *operator new[](size_t bytes) NEWTHROW { return flext_root::operator new[](bytes); }
+ inline void operator delete[](void *blk) DELTHROW { flext_root::operator delete[](blk); }
++inline void operator delete[](void *blk, size_t) DELTHROW { flext_root::operator delete[](blk); }
+ #endif
+
+ #endif // FLEXT_USE_CMEM