summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-07 10:11:28 +0000
committergdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-07 10:11:28 +0000
commit2a576742fab3c384196446017f65f4ce9077ceb7 (patch)
treecf1ec8b78316a2d95e298530826a3c04d994ca76
parent65eab36715ef2bb6e34c683a34897b17ab6d7b12 (diff)
downloadgcc-2a576742fab3c384196446017f65f4ce9077ceb7.tar.gz
* langhooks.c (lhd_print_error_function): Move from diagnostic.c.
* Makefile.in (langhooks.o): Depend on diagnostic.h git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71165 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/Makefile.in2
-rw-r--r--gcc/diagnostic.c34
-rw-r--r--gcc/langhooks.c35
4 files changed, 41 insertions, 35 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7669b77a036..492f6d7fdd7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+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
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 679a7d4db94..732e8f8122e 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -1462,7 +1462,7 @@ convert.o: convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) flags
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
diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
index 8d01a2b0561..8c8a86c2b38 100644
--- a/gcc/diagnostic.c
+++ b/gcc/diagnostic.c
@@ -279,40 +279,6 @@ diagnostic_action_after_output (diagnostic_context *context,
}
}
-/* 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. */
diff --git a/gcc/langhooks.c b/gcc/langhooks.c
index 665a06a5569..622e0626801 100644
--- a/gcc/langhooks.c
+++ b/gcc/langhooks.c
@@ -33,6 +33,7 @@ Boston, MA 02111-1307, USA. */
#include "langhooks.h"
#include "langhooks-def.h"
#include "ggc.h"
+#include "diagnostic.h"
/* Do nothing; in many cases the default hook. */
@@ -493,4 +494,38 @@ lhd_initialize_diagnostics (struct diagnostic_context *ctx ATTRIBUTE_UNUSED)
{
}
+/* 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"