diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b5d9fbd9d9c2b1ab8586123a8b68def70a51ee8f..5d05bbe287369c299a8a1ac3d94424c2c31579a0 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2012-11-29 Kai Tietz <ktietz@redhat.com> + + PR target/55445 + * libsupc++/eh_personaltity.cc (__SEH__): Additional check + for not being SjLj. + 2012-11-28 Andrew Pinski <apinski@cavium.com> PR bootstrap/54279 diff --git a/libstdc++-v3/libsupc++/eh_personality.cc b/libstdc++-v3/libsupc++/eh_personality.cc index 2963c0c584a3f72fb9d9421adef6fcd5e0cbe94d..c339a3e4301d4b68e838085675459e4c8fb81b1b 100644 --- a/libstdc++-v3/libsupc++/eh_personality.cc +++ b/libstdc++-v3/libsupc++/eh_personality.cc @@ -332,13 +332,13 @@ namespace __cxxabiv1 #ifdef _GLIBCXX_SJLJ_EXCEPTIONS #define PERSONALITY_FUNCTION __gxx_personality_sj0 #define __builtin_eh_return_data_regno(x) x -#elif defined(__SEH__) +#elif defined(__SEH__) && !defined (_GLIBCXX_SJLJ_EXCEPTIONS) #define PERSONALITY_FUNCTION __gxx_personality_imp #else #define PERSONALITY_FUNCTION __gxx_personality_v0 #endif -#ifdef __SEH__ +#if defined (__SEH__) && !defined (_GLIBCXX_SJLJ_EXCEPTIONS) static #else extern "C" @@ -785,7 +785,7 @@ __cxa_call_unexpected (void *exc_obj_in) } #endif -#ifdef __SEH__ +#if defined (__SEH__) && !defined (_GLIBCXX_SJLJ_EXCEPTIONS) extern "C" EXCEPTION_DISPOSITION __gxx_personality_seh0 (PEXCEPTION_RECORD ms_exc, void *this_frame,