aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@yorick.cygnus.com>1997-11-27 04:31:58 +0000
committerJason Merrill <jason@gcc.gnu.org>1997-11-26 23:31:58 -0500
commite872bb7a78485ad19507115d289abe61954438ca (patch)
tree564445912ae8f4093bbca621cc059fe8a841e3c4
parent5ad5a5263d0518102817588d94b030719156ffc9 (diff)
downloadgcc-e872bb7a78485ad19507115d289abe61954438ca.zip
gcc-e872bb7a78485ad19507115d289abe61954438ca.tar.gz
gcc-e872bb7a78485ad19507115d289abe61954438ca.tar.bz2
except.c (expand_throw): Call mark_used on the destructor.
* except.c (expand_throw): Call mark_used on the destructor. Fixes operator new on the PA. From-SVN: r16773
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/except.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 8d92663..0a34b48 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+Wed Nov 26 20:28:49 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (expand_throw): Call mark_used on the destructor.
+
1997-11-26 Mark Mitchell <mmitchell@usa.net>
* pt.c (unify): Handle `void' template parameters in
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 56b2a41..6585421 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -1301,6 +1301,7 @@ expand_throw (exp)
cleanup = lookup_fnfields (TYPE_BINFO (TREE_TYPE (object)),
dtor_identifier, 0);
cleanup = TREE_VALUE (cleanup);
+ mark_used (cleanup);
mark_addressable (cleanup);
/* Pretend it's a normal function. */
cleanup = build1 (ADDR_EXPR, cleanup_type, cleanup);