From: Manuel López-Ibáñez Date: Thu, 4 Dec 2014 23:59:35 +0000 (+0000) Subject: error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=99abe958d87a7cf653ea2ea9c467f7ebe0ba956d;p=gcc.git error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location. gcc/fortran/ChangeLog: 2014-12-05 Manuel López-Ibáñez * error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location. gcc/ChangeLog: 2014-12-05 Manuel López-Ibáñez * diagnostic.h (diagnostic_expand_location): New inline function. * diagnostic.c (diagnostic_build_prefix): Use it. (diagnostic_show_locus): Likewise. From-SVN: r218409 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 95e2d310e0b..7858d200a0f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-12-05 Manuel López-Ibáñez + + * 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 PR bootstrap/64189 diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c index 07ce6020192..28ef81c5dad 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 81e59880169..3c4906a31f5 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 95605b7089d..b34084db4c4 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2014-12-05 Manuel López-Ibáñez + + * error.c (gfc_diagnostic_build_locus_prefix): Use + diagnostic_expand_location. + 2014-12-05 Manuel López-Ibáñez * scanner.c (gfc_next_char_literal): Use gfc_warning_now. diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c index d6475f37248..333ad006a15 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_(""))