summaryrefslogtreecommitdiffstats
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-02 05:05:49 +0000
committerzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-02 05:05:49 +0000
commit3a2aee0ea4a57ab546ef4d8a958c88842aeb60f3 (patch)
treeeeebe2343c25c743a039ec74ff8f59e415b538d8 /gcc/toplev.c
parent3586df96a93fb9d8302edf77c60da7dbfb08fcc0 (diff)
downloadppe42-gcc-3a2aee0ea4a57ab546ef4d8a958c88842aeb60f3.tar.gz
ppe42-gcc-3a2aee0ea4a57ab546ef4d8a958c88842aeb60f3.zip
* ggc-page.c (init_ggc): Give better diagnostics on failure to
open /dev/zero. * toplev.c (crash_signal): Reset handling for received signal to SIG_DFL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67323 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 7235d95f447..6a6e076cd54 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -1758,11 +1758,13 @@ floor_log2_wide (unsigned HOST_WIDE_INT x)
}
/* Handler for fatal signals, such as SIGSEGV. These are transformed
- into ICE messages, which is much more user friendly. */
+ into ICE messages, which is much more user friendly. In case the
+ error printer crashes, reset the signal to prevent infinite recursion. */
static void
crash_signal (int signo)
{
+ signal (signo, SIG_DFL);
internal_error ("%s", strsignal (signo));
}
OpenPOWER on IntegriCloud