This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix C++ unwinding through signal frames (PR c++/34152)


Hi!

I've committed this patch as obvious to the trunk (probably should be
applied to 4.2 as well).  One liner is below the limit for copyright
assignments I believe.  Originally in my PR other/26208 fix
_Unwind_GetIPInfo was used unconditionally, then for platforms which insist
on using old libgcc PR target/26792 was added, but with a typo in it
which prevents using _Unwind_GetIPInfo even when it is available.

2008-01-06  Ted Phelps  <phelps@gnusto.com>

	PR c++/34152
	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Check
	_GLIBCXX_HAVE_GETIPINFO instead of HAVE_GETIPINFO.

--- libstdc++-v3/libsupc++/eh_personality.cc	2007-06-19 11:02:32.000000000 +0200
+++ libstdc++-v3/libsupc++/eh_personality.cc	2008-01-06 21:02:23.000000000 +0100
@@ -1,5 +1,5 @@
 // -*- C++ -*- The GNU C++ exception personality routine.
-// Copyright (C) 2001, 2002, 2003, 2006 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2006, 2008 Free Software Foundation, Inc.
 //
 // This file is part of GCC.
 //
@@ -446,7 +446,7 @@ PERSONALITY_FUNCTION (int version,
   // Parse the LSDA header.
   p = parse_lsda_header (context, language_specific_data, &info);
   info.ttype_base = base_of_encoded_value (info.ttype_encoding, context);
-#ifdef HAVE_GETIPINFO
+#ifdef _GLIBCXX_HAVE_GETIPINFO
   ip = _Unwind_GetIPInfo (context, &ip_before_insn);
 #else
   ip = _Unwind_GetIP (context);

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]