* langhooks.c (lhd_print_error_function): Move from diagnostic.c.
* Makefile.in (langhooks.o): Depend on diagnostic.h
From-SVN: r71165
+2003-09-07 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * langhooks.c (lhd_print_error_function): Move from diagnostic.c.
+ * Makefile.in (langhooks.o): Depend on diagnostic.h
+
2003-09-06 James E Wilson <wilson@tuliptree.org>
* loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
langhooks.o : langhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) toplev.h \
tree-inline.h $(RTL_H) insn-config.h $(INTEGRATE_H) langhooks.h \
- $(LANGHOOKS_DEF_H) flags.h $(GGC_H) gt-langhooks.h
+ $(LANGHOOKS_DEF_H) flags.h $(GGC_H) gt-langhooks.h diagnostic.h
tree.o : tree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) flags.h function.h \
toplev.h $(GGC_H) $(HASHTAB_H) $(TARGET_H) output.h $(TM_P_H) langhooks.h \
real.h gt-tree.h
}
}
-/* The default function to print out name of current function that caused
- an error. */
-void
-lhd_print_error_function (diagnostic_context *context, const char *file)
-{
- if (diagnostic_last_function_changed (context))
- {
- const char *old_prefix = context->printer->prefix;
- char *new_prefix = file ? build_message_string ("%s: ", file) : NULL;
-
- pp_set_prefix (context->printer, new_prefix);
-
- if (current_function_decl == NULL)
- pp_string (context->printer, _("At top level:"));
- else
- {
- if (TREE_CODE (TREE_TYPE (current_function_decl)) == METHOD_TYPE)
- pp_printf
- (context->printer, "In member function `%s':",
- (*lang_hooks.decl_printable_name) (current_function_decl, 2));
- else
- pp_printf
- (context->printer, "In function `%s':",
- (*lang_hooks.decl_printable_name) (current_function_decl, 2));
- }
- pp_newline (context->printer);
-
- diagnostic_set_last_function (context);
- pp_flush (context->printer);
- context->printer->prefix = old_prefix;
- free ((char*) new_prefix);
- }
-}
-
/* Prints out, if necessary, the name of the current function
that caused an error. Called from all error and warning functions.
We ignore the FILE parameter, as it cannot be relied upon. */
#include "langhooks.h"
#include "langhooks-def.h"
#include "ggc.h"
+#include "diagnostic.h"
/* Do nothing; in many cases the default hook. */
{
}
+/* The default function to print out name of current function that caused
+ an error. */
+void
+lhd_print_error_function (diagnostic_context *context, const char *file)
+{
+ if (diagnostic_last_function_changed (context))
+ {
+ const char *old_prefix = context->printer->prefix;
+ char *new_prefix = file ? file_name_as_prefix (file) : NULL;
+
+ pp_set_prefix (context->printer, new_prefix);
+
+ if (current_function_decl == NULL)
+ pp_printf (context->printer, "At top level:");
+ else
+ {
+ if (TREE_CODE (TREE_TYPE (current_function_decl)) == METHOD_TYPE)
+ pp_printf
+ (context->printer, "In member function `%s':",
+ (*lang_hooks.decl_printable_name) (current_function_decl, 2));
+ else
+ pp_printf
+ (context->printer, "In function `%s':",
+ (*lang_hooks.decl_printable_name) (current_function_decl, 2));
+ }
+ pp_newline (context->printer);
+
+ diagnostic_set_last_function (context);
+ pp_flush (context->printer);
+ context->printer->prefix = old_prefix;
+ free ((char*) new_prefix);
+ }
+}
+
#include "gt-langhooks.h"