-static void output_flush PARAMS ((output_buffer *));
-static void output_do_verbatim PARAMS ((output_buffer *, text_info *));
-static void output_buffer_to_stream PARAMS ((output_buffer *));
-static void output_format PARAMS ((output_buffer *, text_info *));
-static void output_indent PARAMS ((output_buffer *));
-
-static char *vbuild_message_string PARAMS ((const char *, va_list))
- ATTRIBUTE_PRINTF (1, 0);
-static char *build_message_string PARAMS ((const char *, ...))
- ATTRIBUTE_PRINTF_1;
-static void format_with_decl PARAMS ((output_buffer *, text_info *, tree));
-static void diagnostic_for_decl PARAMS ((diagnostic_info *, tree));
-static void set_real_maximum_length PARAMS ((output_buffer *));
-
-static void output_unsigned_decimal PARAMS ((output_buffer *, unsigned int));
-static void output_long_decimal PARAMS ((output_buffer *, long int));
-static void output_long_unsigned_decimal PARAMS ((output_buffer *,
- long unsigned int));
-static void output_octal PARAMS ((output_buffer *, unsigned int));
-static void output_long_octal PARAMS ((output_buffer *, unsigned long int));
-static void output_hexadecimal PARAMS ((output_buffer *, unsigned int));
-static void output_long_hexadecimal PARAMS ((output_buffer *,
- unsigned long int));
-static void output_append_r PARAMS ((output_buffer *, const char *, int));
-static void wrap_text PARAMS ((output_buffer *, const char *, const char *));
-static void maybe_wrap_text PARAMS ((output_buffer *, const char *,
- const char *));
-static void output_clear_data PARAMS ((output_buffer *));
-
-static void default_diagnostic_starter PARAMS ((diagnostic_context *,
- diagnostic_info *));
-static void default_diagnostic_finalizer PARAMS ((diagnostic_context *,
- diagnostic_info *));
-
-static void error_recursion PARAMS ((diagnostic_context *)) ATTRIBUTE_NORETURN;
-static bool text_specifies_location PARAMS ((text_info *, location_t *));
-
-extern int rtl_dump_and_exit;
-extern int warnings_are_errors;
+static char *build_message_string (const char *, ...) ATTRIBUTE_PRINTF_1;
+
+static void error_recursion (diagnostic_context *) ATTRIBUTE_NORETURN;
+
+static void diagnostic_action_after_output (diagnostic_context *,
+ diagnostic_info *);
+static void real_abort (void) ATTRIBUTE_NORETURN;
+
+/* Name of program invoked, sans directories. */
+
+const char *progname;