aboutsummaryrefslogtreecommitdiff
path: root/gcc/libgcc2.c
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@cygnus.com>1998-09-17 13:55:51 +0000
committerAndrew Macleod <amacleod@gcc.gnu.org>1998-09-17 13:55:51 +0000
commit7ac2148be58dca3f0100951bf57da0d7e84d1531 (patch)
tree295181099ed36b8734ecb3f2417fcaaccc96a9be /gcc/libgcc2.c
parent005dda25ff98c6762242f1eaa20eb8795f30a766 (diff)
downloadgcc-7ac2148be58dca3f0100951bf57da0d7e84d1531.zip
gcc-7ac2148be58dca3f0100951bf57da0d7e84d1531.tar.gz
gcc-7ac2148be58dca3f0100951bf57da0d7e84d1531.tar.bz2
[multiple changes]
Thu Sep 17 16:42:16 EDT 1998 Andrew MacLeod <amacleod@cygnus.com> * except.c (start_catch_handler): Issue 'fatal' instead of 'error' and re-align some code. * libgcc2.c (__eh_rtime_match): fprintf a runtime error. Use <stdio.h>. 1998-09-17 Andrew MacLeod <amacleod@cygnus.com> * exception.cc (__cplus_type_matcher): realign some code. From-SVN: r22462
Diffstat (limited to 'gcc/libgcc2.c')
-rw-r--r--gcc/libgcc2.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c
index 821387b..1e5947b 100644
--- a/gcc/libgcc2.c
+++ b/gcc/libgcc2.c
@@ -3058,6 +3058,7 @@ __empty ()
/* Include definitions of EH context and table layout */
#include "eh-common.h"
+#include <stdio.h>
/* This is a safeguard for dynamic handler chain. */
@@ -3364,10 +3365,15 @@ __eh_rtime_match (void *rtime)
info = *(__get_eh_info ());
matcher = ((__eh_info *)info)->match_function;
- if (!matcher)
- perror ("No runtime type matcher available");
+#ifndef inhibit_libc
+ if (! matcher)
+ {
+ fprintf (stderr, "Internal Compiler Bug: No runtime type matcher.");
+ return 0;
+ }
+#endif
ret = (*matcher) (info, rtime, (void *)0);
- return ((int)ret);
+ return (ret != NULL);
}
/* This value identifies the place from which an exception is being