aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorManuel López-Ibáñez <manu@gcc.gnu.org>2014-12-04 23:59:35 +0000
committerManuel López-Ibáñez <manu@gcc.gnu.org>2014-12-04 23:59:35 +0000
commit99abe958d87a7cf653ea2ea9c467f7ebe0ba956d (patch)
tree5367afa1553141e677c4411189df8b007d01bd1c /gcc
parent1be71446897bf65257d37183f28355a3b5f9fe8e (diff)
downloadgcc-99abe958d87a7cf653ea2ea9c467f7ebe0ba956d.zip
gcc-99abe958d87a7cf653ea2ea9c467f7ebe0ba956d.tar.gz
gcc-99abe958d87a7cf653ea2ea9c467f7ebe0ba956d.tar.bz2
error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location.
gcc/fortran/ChangeLog: 2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org> * error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location. gcc/ChangeLog: 2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org> * diagnostic.h (diagnostic_expand_location): New inline function. * diagnostic.c (diagnostic_build_prefix): Use it. (diagnostic_show_locus): Likewise. From-SVN: r218409
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/diagnostic.c16
-rw-r--r--gcc/diagnostic.h12
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/error.c5
5 files changed, 30 insertions, 14 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 95e2d31..7858d20 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ * diagnostic.h (diagnostic_expand_location): New inline function.
+ * diagnostic.c (diagnostic_build_prefix): Use it.
+ (diagnostic_show_locus): Likewise.
+
2014-12-04 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/64189
diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
index 07ce602..28ef81c 100644
--- a/gcc/diagnostic.c
+++ b/gcc/diagnostic.c
@@ -260,6 +260,8 @@ diagnostic_build_prefix (diagnostic_context *context,
#undef DEFINE_DIAGNOSTIC_KIND
NULL
};
+ gcc_assert (diagnostic->kind < DK_LAST_DIAGNOSTIC_KIND);
+
const char *text = _(diagnostic_kind_text[diagnostic->kind]);
const char *text_cs = "", *text_ce = "";
const char *locus_cs, *locus_ce;
@@ -274,11 +276,7 @@ diagnostic_build_prefix (diagnostic_context *context,
locus_cs = colorize_start (pp_show_color (pp), "locus");
locus_ce = colorize_stop (pp_show_color (pp));
- expanded_location s = expand_location_to_spelling_point (diagnostic->location);
- if (diagnostic->override_column)
- s.column = diagnostic->override_column;
- gcc_assert (diagnostic->kind < DK_LAST_DIAGNOSTIC_KIND);
-
+ expanded_location s = diagnostic_expand_location (diagnostic);
return
(s.file == NULL
? build_message_string ("%s%s:%s %s%s%s", locus_cs, progname, locus_ce,
@@ -289,8 +287,8 @@ diagnostic_build_prefix (diagnostic_context *context,
: context->show_column
? build_message_string ("%s%s:%d:%d:%s %s%s%s", locus_cs, s.file, s.line,
s.column, locus_ce, text_cs, text, text_ce)
- : build_message_string ("%s%s:%d:%s %s%s%s", locus_cs, s.file, s.line, locus_ce,
- text_cs, text, text_ce));
+ : build_message_string ("%s%s:%d:%s %s%s%s", locus_cs, s.file, s.line,
+ locus_ce, text_cs, text, text_ce));
}
/* If LINE is longer than MAX_WIDTH, and COLUMN is not smaller than
@@ -337,9 +335,7 @@ diagnostic_show_locus (diagnostic_context * context,
return;
context->last_location = diagnostic->location;
- s = expand_location_to_spelling_point (diagnostic->location);
- if (diagnostic->override_column)
- s.column = diagnostic->override_column;
+ s = diagnostic_expand_location (diagnostic);
line = location_get_source_line (s, &line_width);
if (line == NULL || s.column > line_width)
return;
diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h
index 81e5988..3c4906a 100644
--- a/gcc/diagnostic.h
+++ b/gcc/diagnostic.h
@@ -297,6 +297,18 @@ void diagnostic_set_caret_max_width (diagnostic_context *context, int value);
void diagnostic_file_cache_fini (void);
+/* Expand the location of this diagnostic. Use this function for consistency. */
+
+static inline expanded_location
+diagnostic_expand_location (const diagnostic_info * diagnostic)
+{
+ expanded_location s
+ = expand_location_to_spelling_point (diagnostic->location);
+ if (diagnostic->override_column)
+ s.column = diagnostic->override_column;
+ return s;
+}
+
/* Pure text formatting support functions. */
extern char *file_name_as_prefix (diagnostic_context *, const char *);
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 95605b7..b34084d 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,10 @@
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
+ * error.c (gfc_diagnostic_build_locus_prefix): Use
+ diagnostic_expand_location.
+
+2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
* scanner.c (gfc_next_char_literal): Use gfc_warning_now.
(load_file): Use the line length as the column hint for
linemap_line_start. Reserve a location for the highest column of
diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c
index d6475f3..333ad00 100644
--- a/gcc/fortran/error.c
+++ b/gcc/fortran/error.c
@@ -1143,10 +1143,7 @@ gfc_diagnostic_build_locus_prefix (diagnostic_context *context,
pretty_printer *pp = context->printer;
const char *locus_cs = colorize_start (pp_show_color (pp), "locus");
const char *locus_ce = colorize_stop (pp_show_color (pp));
- expanded_location s = expand_location_to_spelling_point (diagnostic->location);
- if (diagnostic->override_column)
- s.column = diagnostic->override_column;
-
+ expanded_location s = diagnostic_expand_location (diagnostic);
return (s.file == NULL
? build_message_string ("%s%s:%s", locus_cs, progname, locus_ce )
: !strcmp (s.file, N_("<built-in>"))