From: Per Bothner Date: Tue, 21 Mar 1995 02:44:26 +0000 (-0800) Subject: (print_error_function): New function hook. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b64e9948211ec0fb3432ac6e0d1b7d7b08395eef;p=gcc.git (print_error_function): New function hook. (default_print_error_function): New function. Default value of print_error_function. Code moved here from report_error_function. (report_error_function): Use print_error_function hook. From-SVN: r9215 --- diff --git a/gcc/toplev.c b/gcc/toplev.c index b206128c954..e40f756c23d 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1141,21 +1141,13 @@ announce_function (decl) } } -/* Prints out, if necessary, the name of the current function - which caused an error. Called from all error and warning functions. */ +/* The default function to print out name of current function that caused + an error. */ void -report_error_function (file) +default_print_error_function (file) char *file; { - struct file_stack *p; - - if (need_error_newline) - { - fprintf (stderr, "\n"); - need_error_newline = 0; - } - if (last_error_function != current_function_decl) { char *kind = "function"; @@ -1176,6 +1168,30 @@ report_error_function (file) last_error_function = current_function_decl; } +} + +/* Called by report_error_function to print out function name. + * Default may be overridden by language front-ends. */ + +void (*print_error_function) PROTO((char*)) = default_print_error_function; + +/* Prints out, if necessary, the name of the current function + that caused an error. Called from all error and warning functions. */ + +void +report_error_function (file) + char *file; +{ + struct file_stack *p; + + if (need_error_newline) + { + fprintf (stderr, "\n"); + need_error_newline = 0; + } + + (*print_error_function) (file); + if (input_file_stack && input_file_stack->next != 0 && input_file_stack_tick != last_error_tick) {