diff --git a/src/location.c b/src/location.c index b0d9f015..a7824557 100644 --- a/src/location.c +++ b/src/location.c @@ -388,9 +388,8 @@ location_caret (location loc, const char *style, FILE *out) /* Print the carets with the same indentation as above. */ { - fprintf (out, " | %s%*s", - skip ? "..." : "", - loc.start.column - 1 - skip, ""); + fprintf (out, " | %*s", + loc.start.column - 1 - skip + (skip ? 3 : 0), ""); begin_use_class (style, out); putc ('^', out); /* Underlining a multiline location ends with the first diff --git a/tests/diagnostics.at b/tests/diagnostics.at index 5eba7bad..03960d5f 100644 --- a/tests/diagnostics.at +++ b/tests/diagnostics.at @@ -363,7 +363,7 @@ input.y:9.8-33: previous declaration | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ - | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.8-33: previous declaration 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... | ^~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -384,13 +384,13 @@ input.y:9.8-33: previous declaration | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHI... - | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.8-33: previous declaration 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ - | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ input.y:9.8-33: previous declaration 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... | ^~~~~~~~~~~~~~~~~~~~~~~~~~