]> git.pld-linux.org Git - packages/compat-gcc-34.git/blob - compat-gcc-34-cxxabi.patch
- updated gettext BR
[packages/compat-gcc-34.git] / compat-gcc-34-cxxabi.patch
1 2005-02-18  Richard Henderson  <rth@redhat.com>
2
3         PR libstdc++/10606
4         * config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
5         * libsupc++/eh_catch.cc (__cxa_get_exception_ptr): New.
6         * libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
7
8 --- libstdc++-v3/config/linker-map.gnu  (revision 94498)
9 +++ libstdc++-v3/config/linker-map.gnu  (revision 95705)
10 @@ -406,3 +410,9 @@ CXXABI_1.3 {
11    local:
12      *;
13  };
14 +
15 +CXXABI_1.3.1 {
16 +
17 +    __cxa_get_exception_ptr;
18 +
19 +} CXXABI_1.3;
20 --- libstdc++-v3/libsupc++/unwind-cxx.h (revision 94498)
21 +++ libstdc++-v3/libsupc++/unwind-cxx.h (revision 95705)
22 @@ -107,6 +107,7 @@ extern "C" void __cxa_throw (void *throw
23       __attribute__((noreturn));
24  
25  // Used to implement exception handlers.
26 +extern "C" void *__cxa_get_exception_ptr (void *) throw();
27  extern "C" void *__cxa_begin_catch (void *) throw();
28  extern "C" void __cxa_end_catch ();
29  extern "C" void __cxa_rethrow () __attribute__((noreturn));
30 --- libstdc++-v3/libsupc++/eh_catch.cc  (revision 94498)
31 +++ libstdc++-v3/libsupc++/eh_catch.cc  (revision 95705)
32 @@ -33,6 +33,15 @@
33  
34  using namespace __cxxabiv1;
35  
36 +extern "C" void *
37 +__cxxabiv1::__cxa_get_exception_ptr(void *exc_obj_in) throw()
38 +{
39 +  _Unwind_Exception *exceptionObject
40 +    = reinterpret_cast <_Unwind_Exception *>(exc_obj_in);
41 +  __cxa_exception *header = __get_exception_header_from_ue (exceptionObject);
42 +
43 +  return header->adjustedPtr;
44 +}
45  
46  extern "C" void *
47  __cxxabiv1::__cxa_begin_catch (void *exc_obj_in) throw()
This page took 0.083026 seconds and 3 git commands to generate.