From 3b6c93380e20c56b8151f9c6fc3916670b987df5 Mon Sep 17 00:00:00 2001 From: kan Date: Fri, 3 Jun 2005 03:29:38 +0000 Subject: Gcc 3.4.4 C++ support bits. --- contrib/libstdc++/libsupc++/eh_globals.cc | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'contrib/libstdc++/libsupc++') diff --git a/contrib/libstdc++/libsupc++/eh_globals.cc b/contrib/libstdc++/libsupc++/eh_globals.cc index 4276022..66971fe 100644 --- a/contrib/libstdc++/libsupc++/eh_globals.cc +++ b/contrib/libstdc++/libsupc++/eh_globals.cc @@ -48,7 +48,17 @@ static void get_globals_dtor (void *ptr) { if (ptr) - std::free (ptr); + { + __cxa_exception *exn, *next; + exn = ((__cxa_eh_globals *) ptr)->caughtExceptions; + while (exn) + { + next = exn->nextException; + _Unwind_DeleteException (&exn->unwindHeader); + exn = next; + } + std::free (ptr); + } } static void -- cgit v1.1