aboutsummaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@gcc.gnu.org>1999-04-06 15:10:53 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-04-06 15:10:53 -0700
commit34487bf85731112fd68f579b0cb1c888c71ebfef (patch)
tree90a39e1a592c285664eb3df641380a889308f933 /gcc/toplev.c
parent89c846727b4f86ef2592842cd1ac5ef09d82b037 (diff)
downloadgcc-34487bf85731112fd68f579b0cb1c888c71ebfef.zip
gcc-34487bf85731112fd68f579b0cb1c888c71ebfef.tar.gz
gcc-34487bf85731112fd68f579b0cb1c888c71ebfef.tar.bz2
flow.c (verify_flow_info): New function.
* flow.c (verify_flow_info): New function. (find_basic_blocks): Call it if ENABLE_CHECKING. (merge_blocks): Don't merge if there are non-deletable labels. * toplev.c (fatal_insn): Allow a printf-style arg list. * toplev.h (fatal_insn): Update prototype. From-SVN: r26226
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c29
1 files changed, 16 insertions, 13 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index c5675c1..5da9545 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -1436,21 +1436,24 @@ fatal_io_error (name)
just calling abort(). */
void
-fatal_insn (msgid, insn)
- const char *msgid;
- rtx insn;
+fatal_insn VPROTO((const char *msgid, rtx insn, ...))
{
- error (msgid);
+#ifndef ANSI_PROTOTYPES
+ const char *msgid;
+ rtx insn;
+#endif
+ va_list ap;
+
+ VA_START (ap, insn);
+
+#ifndef ANSI_PROTOTYPES
+ msgid = va_arg (ap, const char *);
+ insn = va_arg (ap, rtx);
+#endif
+
+ verror (msgid, ap);
debug_rtx (insn);
- if (asm_out_file)
- fflush (asm_out_file);
- if (aux_info_file)
- fflush (aux_info_file);
- if (rtl_dump_file != NULL)
- fflush (rtl_dump_file);
- fflush (stdout);
- fflush (stderr);
- abort ();
+ exit (FATAL_EXIT_CODE);
}
/* Called to give a better error message when we don't have an insn to match