summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-29 16:25:37 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2000-01-29 16:25:37 +0000
commitef854fc37bbedbf13ad5db2ca54aecef6db037da (patch)
tree6b946bc9c374de94d2ca92e715ea07f2493a4518
parente1d2ce16f7e01beeb9f6fa3a45aa4626e3f3f425 (diff)
downloadppe42-gcc-ef854fc37bbedbf13ad5db2ca54aecef6db037da.tar.gz
ppe42-gcc-ef854fc37bbedbf13ad5db2ca54aecef6db037da.zip
* new2.cc (operator delete[]): Use operator delete, don't assume
implementation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31687 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/new2.cc8
2 files changed, 8 insertions, 5 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 18b573e6d44..7b0c383ecb6 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2000-01-29 Nathan Sidwell <nathan@acm.org>
+
+ * new2.cc (operator delete[]): Use operator delete, don't assume
+ implementation.
+
2000-01-29 Nathan Sidwell <sidwell@codesourcery.com>
* class.c (build_vtbl_initializer): Add argument to
diff --git a/gcc/cp/new2.cc b/gcc/cp/new2.cc
index d1aab7b2efb..182b2d1d529 100644
--- a/gcc/cp/new2.cc
+++ b/gcc/cp/new2.cc
@@ -1,5 +1,5 @@
// Boilerplate support routines for -*- C++ -*- dynamic memory management.
-// Copyright (C) 1997, 1998, 1999 Free Software Foundation
+// Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation
// This file is part of GNU CC.
@@ -58,8 +58,7 @@ WEAK (void operator delete (void *ptr) throw ())
#ifdef L_op_vdel
WEAK (void operator delete[] (void *ptr) throw ())
{
- if (ptr)
- free (ptr);
+ ::operator delete (ptr);
}
#endif
@@ -74,7 +73,6 @@ WEAK (void operator delete (void *ptr, const std::nothrow_t&) throw ())
#ifdef L_op_vdelnt
WEAK (void operator delete[] (void *ptr, const std::nothrow_t&) throw ())
{
- if (ptr)
- free (ptr);
+ ::operator delete (ptr);
}
#endif
OpenPOWER on IntegriCloud