Mercurial > hg > octave-nkf
diff liboctave/oct-alloc.h @ 4352:80b83de0aa2a
[project @ 2003-02-21 20:01:38 by jwe]
author | jwe |
---|---|
date | Fri, 21 Feb 2003 20:01:39 +0000 |
parents | e0f687d372ef |
children | 4c8a2e4e0717 |
line wrap: on
line diff
--- a/liboctave/oct-alloc.h +++ b/liboctave/oct-alloc.h @@ -59,12 +59,21 @@ bool grow (void); }; +#if defined (HAVE_PLACEMENT_DELETE) +#define DECLARE_OCTAVE_ALLOCATOR_PLACEMENT_DELETE \ + void operator delete (void *p, void *) \ + { ::operator delete (p, static_cast<void*> (0)); } +#else +#define DECLARE_OCTAVE_ALLOCATOR_PLACEMENT_DELETE \ + void operator delete (void *p, void *) \ + { ::operator delete (p); } +#endif + #define DECLARE_OCTAVE_ALLOCATOR \ public: \ void *operator new (size_t size, void *p) \ { return ::operator new (size, p); } \ - void operator delete (void *p, void *) \ - { ::operator delete (p); } \ + DECLARE_OCTAVE_ALLOCATOR_PLACEMENT_DELETE \ void *operator new (size_t size) { return allocator.alloc (size); } \ void operator delete (void *p, size_t size) { allocator.free (p, size); } \ private: \