From: Gabriel Dos Reis Date: Sun, 2 Jun 2002 19:06:30 +0000 (+0000) Subject: diagnostic.h (struct diagnostic_context): Add new member internal_error. X-Git-Tag: releases/gcc-3.3.0~4612 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=27e511e0d56e4968abd1549b50b62071f22a224f;p=thirdparty%2Fgcc.git 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1bf04eb060ae..dc8a45dd7c83 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2002-06-02 Gabriel Dos Reis + + * 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 * rtl.h (CC0_P): New. diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index b4b6161fbe36..a17ab0357985 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,7 @@ +2002-06-02 Gabriel Dos Reis + + * misc.c (gnat_init): Adjust setting of internal_error_function. + 2002-06-01 Joseph S. Myers * gnat_ug.texi: Use @ifnottex instead of @ifinfo. diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index 63ac00a0e875..3bc01d303aae 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -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 (); diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c index 027ea53016b5..f276ec0dd1dd 100644 --- a/gcc/diagnostic.c +++ b/gcc/diagnostic.c @@ -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); diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h index 925134af48f9..3762136d0b62 100644 --- a/gcc/diagnostic.h +++ b/gcc/diagnostic.h @@ -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 *,