Move diagnostic kind name to the end of the diagnostic. (#4437)

Also surround it in square brackets rather than parentheses. This
matches the format used by Clang and GCC, and means diagnostics will
still match the `file:line:col: error: ` pattern used by some IDE tools.

Before:
```console
fail_builtins.carbon:11:11: error(AliasRequiresNameRef): alias initializer must be a name reference
```

After:
```console
fail_builtins.carbon:11:11: error: alias initializer must be a name reference [AliasRequiresNameRef]
```

Also tighten up test regex to only match on `STDERR` lines that list a
file name.
This commit is contained in:
Richard Smith
2024-10-23 16:56:23 +00:00
committed by GitHub
parent f206072216
commit 2e63da1a40
528 changed files with 1929 additions and 1928 deletions
@@ -9,11 +9,11 @@
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/parse/testdata/array/fail_require_close_bracket.carbon
// TODO: It should emit only one error message.
// CHECK:STDERR: fail_require_close_bracket.carbon:[[@LINE+7]]:8: error(UnmatchedOpening): opening symbol without a corresponding closing symbol
// CHECK:STDERR: fail_require_close_bracket.carbon:[[@LINE+7]]:8: error: opening symbol without a corresponding closing symbol [UnmatchedOpening]
// CHECK:STDERR: var x: [i32;;
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_require_close_bracket.carbon:[[@LINE+3]]:8: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_require_close_bracket.carbon:[[@LINE+3]]:8: error: expected expression [ExpectedExpr]
// CHECK:STDERR: var x: [i32;;
// CHECK:STDERR: ^
var x: [i32;;
+1 -1
View File
@@ -8,7 +8,7 @@
// TIP: To dump output, run:
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/parse/testdata/array/fail_require_semi.carbon
// CHECK:STDERR: fail_require_semi.carbon:[[@LINE+3]]:12: error(ExpectedArraySemi): expected `;` in array type
// CHECK:STDERR: fail_require_semi.carbon:[[@LINE+3]]:12: error: expected `;` in array type [ExpectedArraySemi]
// CHECK:STDERR: var x: [i32];
// CHECK:STDERR: ^
var x: [i32];
+13 -13
View File
@@ -10,7 +10,7 @@
// --- fail_type.carbon
// CHECK:STDERR: fail_type.carbon:[[@LINE+4]]:12: error(ExpectedArraySemi): expected `;` in array type
// CHECK:STDERR: fail_type.carbon:[[@LINE+4]]:12: error: expected `;` in array type [ExpectedArraySemi]
// CHECK:STDERR: var x: [i32];
// CHECK:STDERR: ^
// CHECK:STDERR:
@@ -18,19 +18,19 @@ var x: [i32];
// --- fail_invalid_char.carbon
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+16]]:12: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+16]]:12: error: expected expression [ExpectedExpr]
// CHECK:STDERR: fn X() -> [:];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+12]]:12: error(ExpectedArraySemi): expected `;` in array type
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+12]]:12: error: expected `;` in array type [ExpectedArraySemi]
// CHECK:STDERR: fn X() -> [:];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+8]]:12: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+8]]:12: error: expected expression [ExpectedExpr]
// CHECK:STDERR: fn X() -> [:];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+4]]:12: error(ExpectedCloseSymbol): unexpected tokens before `]`
// CHECK:STDERR: fail_invalid_char.carbon:[[@LINE+4]]:12: error: unexpected tokens before `]` [ExpectedCloseSymbol]
// CHECK:STDERR: fn X() -> [:];
// CHECK:STDERR: ^
// CHECK:STDERR:
@@ -38,23 +38,23 @@ fn X() -> [:];
// --- fail_unlexed_expr.carbon
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+20]]:9: error(UnrecognizedCharacters): encountered unrecognized characters while parsing
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+20]]:9: error: encountered unrecognized characters while parsing [UnrecognizedCharacters]
// CHECK:STDERR: var y: [`];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+16]]:9: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+16]]:9: error: expected expression [ExpectedExpr]
// CHECK:STDERR: var y: [`];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+12]]:9: error(ExpectedArraySemi): expected `;` in array type
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+12]]:9: error: expected `;` in array type [ExpectedArraySemi]
// CHECK:STDERR: var y: [`];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+8]]:9: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+8]]:9: error: expected expression [ExpectedExpr]
// CHECK:STDERR: var y: [`];
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+4]]:9: error(ExpectedCloseSymbol): unexpected tokens before `]`
// CHECK:STDERR: fail_unlexed_expr.carbon:[[@LINE+4]]:9: error: unexpected tokens before `]` [ExpectedCloseSymbol]
// CHECK:STDERR: var y: [`];
// CHECK:STDERR: ^
// CHECK:STDERR:
@@ -62,11 +62,11 @@ var y: [`];
// --- fail_no_close_bracket.carbon
// CHECK:STDERR: fail_no_close_bracket.carbon:[[@LINE+8]]:8: error(UnmatchedOpening): opening symbol without a corresponding closing symbol
// CHECK:STDERR: fail_no_close_bracket.carbon:[[@LINE+8]]:8: error: opening symbol without a corresponding closing symbol [UnmatchedOpening]
// CHECK:STDERR: var x: [i32;;
// CHECK:STDERR: ^
// CHECK:STDERR:
// CHECK:STDERR: fail_no_close_bracket.carbon:[[@LINE+4]]:8: error(ExpectedExpr): expected expression
// CHECK:STDERR: fail_no_close_bracket.carbon:[[@LINE+4]]:8: error: expected expression [ExpectedExpr]
// CHECK:STDERR: var x: [i32;;
// CHECK:STDERR: ^
// CHECK:STDERR:
@@ -74,7 +74,7 @@ var x: [i32;;
// --- fail_no_semi.carbon
// CHECK:STDERR: fail_no_semi.carbon:[[@LINE+3]]:12: error(ExpectedArraySemi): expected `;` in array type
// CHECK:STDERR: fail_no_semi.carbon:[[@LINE+3]]:12: error: expected `;` in array type [ExpectedArraySemi]
// CHECK:STDERR: var x: [i32];
// CHECK:STDERR: ^
var x: [i32];