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
+3 -3
View File
@@ -8,19 +8,19 @@
// TIP: To dump output, run:
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/parse/testdata/package_expr/fail_in_name.carbon
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+4]]:5: error(ExpectedBindingPattern): expected name in binding pattern
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+4]]:5: error: expected name in binding pattern [ExpectedBindingPattern]
// CHECK:STDERR: var package.val: i32;
// CHECK:STDERR: ^~~~~~~
// CHECK:STDERR:
var package.val: i32;
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+4]]:11: error(ExpectedDeclName): `namespace` introducer should be followed by a name
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+4]]:11: error: `namespace` introducer should be followed by a name [ExpectedDeclName]
// CHECK:STDERR: namespace package.NS;
// CHECK:STDERR: ^~~~~~~
// CHECK:STDERR:
namespace package.NS;
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+3]]:7: error(ExpectedDeclName): `class` introducer should be followed by a name
// CHECK:STDERR: fail_in_name.carbon:[[@LINE+3]]:7: error: `class` introducer should be followed by a name [ExpectedDeclName]
// CHECK:STDERR: class package.C {
// CHECK:STDERR: ^~~~~~~
class package.C {