diff options
| author | Jonathan Turner <jonathandturner@users.noreply.github.com> | 2016-08-07 09:59:42 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-08-07 09:59:42 -0700 |
| commit | 4df58252bfda31b94aa28255af8d8bc320a2c2a7 (patch) | |
| tree | 7076f8b09c3597ee66a78af823147758667ba816 /src | |
| parent | 46392c807692104957545396d38bedc31591777d (diff) | |
| parent | c9e9d425769274b59734d852a8ae64c9fef16d78 (diff) | |
| download | rust-4df58252bfda31b94aa28255af8d8bc320a2c2a7.tar.gz rust-4df58252bfda31b94aa28255af8d8bc320a2c2a7.zip | |
Rollup merge of #35410 - silenuss:e0027-formatting, r=jonathandturner
Update compiler error 0027 to use new error format. Part of #35233, Addresses #35200 r? @jonathandturner
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_typeck/check/_match.rs | 8 | ||||
| -rw-r--r-- | src/test/compile-fail/E0027.rs | 4 |
2 files changed, 8 insertions, 4 deletions
diff --git a/src/librustc_typeck/check/_match.rs b/src/librustc_typeck/check/_match.rs index aae6e3ad36d..47f75e2f499 100644 --- a/src/librustc_typeck/check/_match.rs +++ b/src/librustc_typeck/check/_match.rs @@ -700,9 +700,11 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> { for field in variant.fields .iter() .filter(|field| !used_fields.contains_key(&field.name)) { - span_err!(tcx.sess, span, E0027, - "pattern does not mention field `{}`", - field.name); + struct_span_err!(tcx.sess, span, E0027, + "pattern does not mention field `{}`", + field.name) + .span_label(span, &format!("missing field `{}`", field.name)) + .emit(); } } } diff --git a/src/test/compile-fail/E0027.rs b/src/test/compile-fail/E0027.rs index b2f20442b77..ca496a24701 100644 --- a/src/test/compile-fail/E0027.rs +++ b/src/test/compile-fail/E0027.rs @@ -17,6 +17,8 @@ fn main() { let d = Dog { name: "Rusty".to_string(), age: 8 }; match d { - Dog { age: x } => {} //~ ERROR E0027 + Dog { age: x } => {} + //~^ ERROR pattern does not mention field `name` + //~| NOTE missing field `name` } } |
