[PATCH obvious/diagnostics] Honor override_column when printing the caret

Manuel López-Ibáñez lopezibanez@gmail.com
Tue Dec 2 23:19:00 GMT 2014


libcpp uses diagnostic->override_column to give a custom column number
to diagnostics. This is taken into account when building the prefix,
but it was missing when placing the caret.

Before:

/home/manuel/override_column.c:1:4: warning: "/*" within comment [-Wcomment]
 /* /* */
 ^

After:

/home/manuel/override_column.c:1:4: warning: "/*" within comment [-Wcomment]
 /* /* */
    ^


Committed as obvious in r218295.


2014-12-03  Manuel López-Ibáñez  <manu@gcc.gnu.org>

    * diagnostic.c (diagnostic_show_locus): Honor override_column when
    placing the caret.

--- gcc/diagnostic.c    (revision 218278)
+++ gcc/diagnostic.c    (working copy)
@@ -308,10 +308,12 @@ diagnostic_show_locus (diagnostic_contex
       || diagnostic->location == context->last_location)
     return;

   context->last_location = diagnostic->location;
   s = expand_location_to_spelling_point (diagnostic->location);
+  if (diagnostic->override_column)
+    s.column = diagnostic->override_column;
   line = location_get_source_line (s, &line_width);
   if (line == NULL || s.column > line_width)
     return;



More information about the Gcc-patches mailing list