aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/libsupc++
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2008-08-21 19:37:23 +0200
committerPaolo Carlini <paolo@gcc.gnu.org>2008-08-21 17:37:23 +0000
commiteb5712c966473f563c24c8749e1f96d3acb671a2 (patch)
treec608fb572ab05cad4f8beb492653276b40318177 /libstdc++-v3/libsupc++
parent406f3538871593ccc0ed521bc7e15e563442843a (diff)
downloadgcc-eb5712c966473f563c24c8749e1f96d3acb671a2.zip
gcc-eb5712c966473f563c24c8749e1f96d3acb671a2.tar.gz
gcc-eb5712c966473f563c24c8749e1f96d3acb671a2.tar.bz2
eh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception.
2008-08-21 Sebastian Redl <sebastian.redl@getdesigned.at> * libsupc++/eh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception. From-SVN: r139402
Diffstat (limited to 'libstdc++-v3/libsupc++')
-rw-r--r--libstdc++-v3/libsupc++/eh_ptr.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/libstdc++-v3/libsupc++/eh_ptr.cc b/libstdc++-v3/libsupc++/eh_ptr.cc
index 35ba5f9..ce6c172 100644
--- a/libstdc++-v3/libsupc++/eh_ptr.cc
+++ b/libstdc++-v3/libsupc++/eh_ptr.cc
@@ -199,6 +199,8 @@ __gxx_dependent_exception_cleanup (_Unwind_Reason_Code code,
if (code != _URC_FOREIGN_EXCEPTION_CAUGHT && code != _URC_NO_REASON)
__terminate (header->terminateHandler);
+ __cxa_free_dependent_exception (dep);
+
if (__gnu_cxx::__exchange_and_add_dispatch (&header->referenceCount, -1) == 0)
{
if (header->exceptionDestructor)