From c94ed7a1ae35d90b76e04cc7d8a9d72a7aa1451c Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 27 Sep 2007 09:24:58 +0200 Subject: builtins.c (expand_builtin, [...]): Use new %K format string specifier for diagnostics. * builtins.c (expand_builtin, expand_builtin_object_size, expand_builtin_memory_chk, maybe_emit_chk_warning, maybe_emit_sprintf_chk_warning): Use new %K format string specifier for diagnostics. * expr.c (expand_expr_real_1): Likewise. * langhooks-def.h (struct diagnostic_info): Add forward decl. (lhd_print_error_function): Add third argument. * langhooks.h (struct diagnostic_info): Add forward decl. (struct lang_hooks): Add third argument to print_error_function. * diagnostic.h (diagnostic_info): Add abstract_origin field. (diagnostic_last_function_changed, diagnostic_set_last_function): Add second argument. (diagnostic_report_current_function): Likewise. * toplev.c (announce_function): Pass NULL as second argument to diagnostic_set_last_function. * diagnostic.c (diagnostic_report_current_function): Add second argument, pass it as third argument to lang_hooks.print_error_function. (default_diagnostic_starter): Pass DIAGNOSTIC as second argument to diagnostic_report_current_function. (diagnostic_report_diagnostic): Initialize diagnostic->abstract_origin and message.abstract_origin. (verbatim): Initialize abstract_origin. * pretty-print.h (text_info): Add abstract_origin field. * pretty-print.c (pp_base_format): Handle %K. * langhooks.c (lhd_print_error_function): Add third argument. If diagnostic->abstract_origin, print virtual backtrace. * c-format.c (gcc_diag_char_table, gcc_tdiag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table): Support %K. (init_dynamic_diag_info): Likewise. cp/ * error.c (cxx_print_error_function): Add third argument, pass it over to lhd_print_error_function. (cp_print_error_function): If diagnostic->abstract_origin, print virtual backtrace. * cp-tree.h (struct diagnostic_info): New forward decl. (cxx_print_error_function): Add third argument. java/ * lang.c (java_print_error_function): Add third argument. testsuite/ * lib/prune.exp: Prune also "^In function .*$" lines and "^ inlined from .*$" lines. From-SVN: r128830 --- gcc/java/lang.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gcc/java/lang.c') diff --git a/gcc/java/lang.c b/gcc/java/lang.c index 333eb8c..4258906 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -54,7 +54,8 @@ static bool java_post_options (const char **); static int java_handle_option (size_t scode, const char *arg, int value); static void put_decl_string (const char *, int); static void put_decl_node (tree); -static void java_print_error_function (diagnostic_context *, const char *); +static void java_print_error_function (diagnostic_context *, const char *, + diagnostic_info *); static int merge_init_test_initialization (void * *, void *); static int inline_init_test_initialization (void * *, void *); static bool java_dump_tree (void *, tree); @@ -489,7 +490,8 @@ static GTY(()) tree last_error_function_context; static GTY(()) tree last_error_function; static void java_print_error_function (diagnostic_context *context ATTRIBUTE_UNUSED, - const char *file) + const char *file, + diagnostic_info *diagnostic ATTRIBUTE_UNUSED) { /* Don't print error messages with bogus function prototypes. */ if (inhibit_error_function_printing) -- cgit v1.1