Commit 27e511e0 by Gabriel Dos Reis Committed by Gabriel Dos Reis

diagnostic.h (struct diagnostic_context): Add new member internal_error.

	* diagnostic.h (struct diagnostic_context):  Add new member
	internal_error.
	(internal_error_function): Remove declaration.
	* diagnostic.c (internal_error_function): Remove definition..
	(internal_error): Adjust use.
ada/
	* misc.c (gnat_init): Adjust setting of internal_error_function.

From-SVN: r54179
parent 818b6b7f
2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
* diagnostic.h (struct diagnostic_context): Add new member
internal_error.
(internal_error_function): Remove declaration.
* diagnostic.c (internal_error_function): Remove definition..
(internal_error): Adjust use.
2002-06-02 Richard Henderson <rth@redhat.com>
* rtl.h (CC0_P): New.
......
2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
* misc.c (gnat_init): Adjust setting of internal_error_function.
2002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
* gnat_ug.texi: Use @ifnottex instead of @ifinfo.
......
......@@ -384,7 +384,7 @@ gnat_init (filename)
gnat_argc++;
gnat_argv[gnat_argc] = 0;
set_internal_error_function (internal_error_function);
global_dc->internal_error = &internal_error_function;
/* Show that REFERENCE_TYPEs are internal and should be Pmode. */
internal_reference_types ();
......
......@@ -1236,20 +1236,6 @@ fatal_error VPARAMS ((const char *msgid, ...))
exit (FATAL_EXIT_CODE);
}
/* Report a compiler error at the current line number. Allow a front end to
intercept the message. */
static void (*internal_error_function) PARAMS ((const char *, va_list *));
/* Set the function to call when a compiler error occurs. */
void
set_internal_error_function (f)
void (*f) PARAMS ((const char *, va_list *));
{
internal_error_function = f;
}
void
internal_error VPARAMS ((const char *msgid, ...))
{
......@@ -1270,8 +1256,8 @@ internal_error VPARAMS ((const char *msgid, ...))
}
#endif
if (internal_error_function != 0)
(*internal_error_function) (_(msgid), &ap);
if (global_dc->internal_error != 0)
(*global_dc->internal_error) (_(msgid), &ap);
set_diagnostic_context
(&dc, msgid, &ap, input_filename, lineno, /* warn = */0);
......
......@@ -203,6 +203,9 @@ struct diagnostic_context
/* This function is called after the diagnostic message is printed. */
void (*end_diagnostic) PARAMS ((output_buffer *, diagnostic_context *));
/* Client hook to report an internal error. */
void (*internal_error) PARAMS ((const char *, va_list *));
/* Hook for front-end extensions. */
void *x_data;
};
......@@ -275,9 +278,6 @@ extern diagnostic_context *global_dc;
extern void set_diagnostic_context PARAMS ((diagnostic_context *,
const char *, va_list *,
const char *, int, int));
extern void set_internal_error_function PARAMS ((void (*)
PARAMS ((const char *,
va_list *))));
extern void report_diagnostic PARAMS ((diagnostic_context *));
extern void diagnostic_initialize PARAMS ((diagnostic_context *));
extern void init_output_buffer PARAMS ((output_buffer *,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment