diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e4563368c38..c7b0ca78327 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +1999-10-14 Gavin Romig-Koch + + * libgcc2.c (__do_global_dtors): Protect __deregister_frame_info + from multiple calls. + Thu Oct 14 04:54:54 1999 Richard Henderson * i386.md (call value patterns): Move to the end of the file. diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index a05d7fd52aa..6a982cc3a2a 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -2867,7 +2867,14 @@ __do_global_dtors () } #endif #ifdef EH_FRAME_SECTION - __deregister_frame_info (__EH_FRAME_BEGIN__); + { + static int completed = 0; + if (! completed) + { + completed = 1; + __deregister_frame_info (__EH_FRAME_BEGIN__); + } + } #endif } #endif