exception.cc (__cp_pop_exception): Free the original exception value, not the potenti...
authorAndrew MacLeod <amacleod@cygnus.com>
Fri, 23 Oct 1998 16:26:19 +0000 (16:26 +0000)
committerAndrew Macleod <amacleod@gcc.gnu.org>
Fri, 23 Oct 1998 16:26:19 +0000 (16:26 +0000)
1998-10-23  Andrew MacLeod  <amacleod@cygnus.com>
      * exception.cc (__cp_pop_exception): Free the original exception
      value, not the potentially coerced one.

From-SVN: r23259

gcc/cp/ChangeLog
gcc/cp/exception.cc

index e5e8def2c4fa1b0b260238d194a57d26c59568c5..ae7eb528b942b8d98ad1d32434b244c2c0e0d97b 100644 (file)
@@ -1,3 +1,8 @@
+1998-10-23  Andrew MacLeod  <amacleod@cygnus.com>
+
+       * exception.cc (__cp_pop_exception): Free the original exception
+       value, not the potentially coerced one.
+
 1998-10-23  Mark Mitchell  <mark@markmitchell.com>
 
        * Makefile.in (hash.h): Run gperf when necessary.
index 05b431521ccb1ee2fd9128bc9a137a5313dfbc13..2cc0bc074a8824e2fa00e846a881ffe2d4a86310 100644 (file)
@@ -233,7 +233,7 @@ __cp_pop_exception (cp_eh_info *p)
     p->cleanup (p->value, 2);
 
   if (! __is_pointer (p->type))
-    __eh_free (p->value);
+    __eh_free (p->original_value);  // value may have been co-erced.
 
   __eh_free (p);
 }