mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
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:
+5
-5
@@ -36,7 +36,7 @@ adapt i32;
|
||||
// --- fail_bad_syntax.carbon
|
||||
|
||||
class A {
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:11: error(ExpectedDeclSemi): `adapt` declarations must end with a `;`
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:11: error: `adapt` declarations must end with a `;` [ExpectedDeclSemi]
|
||||
// CHECK:STDERR: adapt 1 trailing_token;
|
||||
// CHECK:STDERR: ^~~~~~~~~~~~~~
|
||||
// CHECK:STDERR:
|
||||
@@ -44,7 +44,7 @@ class A {
|
||||
}
|
||||
|
||||
class B {
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:8: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:8: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: adapt;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
@@ -53,14 +53,14 @@ class B {
|
||||
|
||||
class C {
|
||||
adapt
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:1: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:1: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: }
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
}
|
||||
|
||||
class D {
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:9: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+4]]:9: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: adapt class;
|
||||
// CHECK:STDERR: ^~~~~
|
||||
// CHECK:STDERR:
|
||||
@@ -68,7 +68,7 @@ class D {
|
||||
}
|
||||
|
||||
fn F() {
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+3]]:3: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_bad_syntax.carbon:[[@LINE+3]]:3: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: adapt i32;
|
||||
// CHECK:STDERR: ^~~~~
|
||||
adapt i32;
|
||||
|
||||
+4
-4
@@ -9,13 +9,13 @@
|
||||
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/parse/testdata/class/fail_base.carbon
|
||||
|
||||
class A {
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+4]]:7: error(ExpectedAfterBase): `class` or `:` expected after `base`
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+4]]:7: error: `class` or `:` expected after `base` [ExpectedAfterBase]
|
||||
// CHECK:STDERR: base;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
base;
|
||||
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+4]]:9: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+4]]:9: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: base: ;
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
@@ -23,11 +23,11 @@ class A {
|
||||
|
||||
base: { }
|
||||
// We should resume parsing here after the previous error.
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+7]]:3: error(ExpectedDeclSemi): `base` declarations must end with a `;`
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+7]]:3: error: `base` declarations must end with a `;` [ExpectedDeclSemi]
|
||||
// CHECK:STDERR: var n: i32;
|
||||
// CHECK:STDERR: ^~~
|
||||
// CHECK:STDERR:
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+3]]:7: error(UnrecognizedDecl): unrecognized declaration introducer
|
||||
// CHECK:STDERR: fail_base.carbon:[[@LINE+3]]:7: error: unrecognized declaration introducer [UnrecognizedDecl]
|
||||
// CHECK:STDERR: var n: i32;
|
||||
// CHECK:STDERR: ^
|
||||
var n: i32;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
base class B {}
|
||||
|
||||
fn F() {
|
||||
// CHECK:STDERR: fail_base_misplaced.carbon:[[@LINE+3]]:3: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_base_misplaced.carbon:[[@LINE+3]]:3: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: base: B;
|
||||
// CHECK:STDERR: ^~~~
|
||||
base: B;
|
||||
|
||||
+3
-3
@@ -11,14 +11,14 @@
|
||||
// --- fail_virtual_class.carbon
|
||||
|
||||
virtual class B
|
||||
// CHECK:STDERR: fail_virtual_class.carbon:[[@LINE+4]]:1: error(ExpectedDeclSemiOrDefinition): `virtual` declarations must either end with a `;` or have a `{ ... }` block for a definition
|
||||
// CHECK:STDERR: fail_virtual_class.carbon:[[@LINE+4]]:1: error: `virtual` declarations must either end with a `;` or have a `{ ... }` block for a definition [ExpectedDeclSemiOrDefinition]
|
||||
// CHECK:STDERR:
|
||||
// CHECK:STDERR: ^
|
||||
// CHECK:STDERR:
|
||||
|
||||
// --- fail_impl_class.carbon
|
||||
|
||||
// CHECK:STDERR: fail_impl_class.carbon:[[@LINE+4]]:1: error(ExpectedDeclName): `impl` introducer should be followed by a name
|
||||
// CHECK:STDERR: fail_impl_class.carbon:[[@LINE+4]]:1: error: `impl` introducer should be followed by a name [ExpectedDeclName]
|
||||
// CHECK:STDERR: impl class
|
||||
// CHECK:STDERR: ^~~~
|
||||
// CHECK:STDERR:
|
||||
@@ -27,7 +27,7 @@ impl class
|
||||
// --- fail_extend_adapt_base.carbon
|
||||
|
||||
class C {
|
||||
// CHECK:STDERR: fail_extend_adapt_base.carbon:[[@LINE+3]]:16: error(ExpectedExpr): expected expression
|
||||
// CHECK:STDERR: fail_extend_adapt_base.carbon:[[@LINE+3]]:16: error: expected expression [ExpectedExpr]
|
||||
// CHECK:STDERR: extend adapt base B;
|
||||
// CHECK:STDERR: ^~~~
|
||||
extend adapt base B;
|
||||
|
||||
Reference in New Issue
Block a user