1
Fork 0

Rollup merge of #56114 - varkor:nonexhaustive-backticks, r=nikomatsakis

Enclose type in backticks for "non-exhaustive patterns" error

This makes the error style consistent with the convention in error messages.
This commit is contained in:
Guillaume Gomez 2018-11-29 13:10:33 +01:00 committed by GitHub
commit aebf07e3eb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 17 additions and 17 deletions

View file

@ -234,7 +234,7 @@ impl<'a, 'tcx> MatchVisitor<'a, 'tcx> {
if !scrutinee_is_uninhabited { if !scrutinee_is_uninhabited {
// We know the type is inhabited, so this must be wrong // We know the type is inhabited, so this must be wrong
let mut err = create_e0004(self.tcx.sess, scrut.span, let mut err = create_e0004(self.tcx.sess, scrut.span,
format!("non-exhaustive patterns: type {} \ format!("non-exhaustive patterns: type `{}` \
is non-empty", is non-empty",
pat_ty)); pat_ty));
span_help!(&mut err, scrut.span, span_help!(&mut err, scrut.span,

View file

@ -59,7 +59,7 @@ impl<'a, 'gcx, 'tcx> Iterator for Autoderef<'a, 'gcx, 'tcx> {
if self.steps.len() >= *tcx.sess.recursion_limit.get() { if self.steps.len() >= *tcx.sess.recursion_limit.get() {
// We've reached the recursion limit, error gracefully. // We've reached the recursion limit, error gracefully.
let suggested_limit = *tcx.sess.recursion_limit.get() * 2; let suggested_limit = *tcx.sess.recursion_limit.get() * 2;
let msg = format!("reached the recursion limit while auto-dereferencing {:?}", let msg = format!("reached the recursion limit while auto-dereferencing `{:?}`",
self.cur_ty); self.cur_ty);
let error_id = (DiagnosticMessageId::ErrorId(55), Some(self.span), msg); let error_id = (DiagnosticMessageId::ErrorId(55), Some(self.span), msg);
let fresh = tcx.sess.one_time_diagnostics.borrow_mut().insert(error_id); let fresh = tcx.sess.one_time_diagnostics.borrow_mut().insert(error_id);
@ -67,7 +67,7 @@ impl<'a, 'gcx, 'tcx> Iterator for Autoderef<'a, 'gcx, 'tcx> {
struct_span_err!(tcx.sess, struct_span_err!(tcx.sess,
self.span, self.span,
E0055, E0055,
"reached the recursion limit while auto-dereferencing {:?}", "reached the recursion limit while auto-dereferencing `{:?}`",
self.cur_ty) self.cur_ty)
.span_label(self.span, "deref recursion limit reached") .span_label(self.span, "deref recursion limit reached")
.help(&format!( .help(&format!(

View file

@ -538,7 +538,7 @@ fn main() {
let foo = Foo; let foo = Foo;
let ref_foo = &&Foo; let ref_foo = &&Foo;
// error, reached the recursion limit while auto-dereferencing &&Foo // error, reached the recursion limit while auto-dereferencing `&&Foo`
ref_foo.foo(); ref_foo.foo();
} }
``` ```

View file

@ -1,4 +1,4 @@
error[E0055]: reached the recursion limit while auto-dereferencing I error[E0055]: reached the recursion limit while auto-dereferencing `I`
--> $DIR/recursion_limit_deref.rs:60:22 --> $DIR/recursion_limit_deref.rs:60:22
| |
LL | let x: &Bottom = &t; //~ ERROR mismatched types LL | let x: &Bottom = &t; //~ ERROR mismatched types

View file

@ -1,4 +1,4 @@
error[E0004]: non-exhaustive patterns: type std::option::Option<i32> is non-empty error[E0004]: non-exhaustive patterns: type `std::option::Option<i32>` is non-empty
--> $DIR/E0004-2.rs:14:11 --> $DIR/E0004-2.rs:14:11
| |
LL | match x { } //~ ERROR E0004 LL | match x { } //~ ERROR E0004

View file

@ -1,4 +1,4 @@
error[E0055]: reached the recursion limit while auto-dereferencing Foo error[E0055]: reached the recursion limit while auto-dereferencing `Foo`
--> $DIR/E0055.rs:21:13 --> $DIR/E0055.rs:21:13
| |
LL | ref_foo.foo(); LL | ref_foo.foo();

View file

@ -7,7 +7,7 @@ LL | x = box x;
| cyclic type of infinite size | cyclic type of infinite size
| help: try using a conversion method: `box x.to_string()` | help: try using a conversion method: `box x.to_string()`
error[E0055]: reached the recursion limit while auto-dereferencing Foo error[E0055]: reached the recursion limit while auto-dereferencing `Foo`
--> $DIR/infinite-autoderef.rs:35:5 --> $DIR/infinite-autoderef.rs:35:5
| |
LL | Foo.foo; LL | Foo.foo;
@ -15,7 +15,7 @@ LL | Foo.foo;
| |
= help: consider adding a `#![recursion_limit="128"]` attribute to your crate = help: consider adding a `#![recursion_limit="128"]` attribute to your crate
error[E0055]: reached the recursion limit while auto-dereferencing Foo error[E0055]: reached the recursion limit while auto-dereferencing `Foo`
--> $DIR/infinite-autoderef.rs:35:9 --> $DIR/infinite-autoderef.rs:35:9
| |
LL | Foo.foo; LL | Foo.foo;
@ -29,7 +29,7 @@ error[E0609]: no field `foo` on type `Foo`
LL | Foo.foo; LL | Foo.foo;
| ^^^ unknown field | ^^^ unknown field
error[E0055]: reached the recursion limit while auto-dereferencing Foo error[E0055]: reached the recursion limit while auto-dereferencing `Foo`
--> $DIR/infinite-autoderef.rs:36:9 --> $DIR/infinite-autoderef.rs:36:9
| |
LL | Foo.bar(); LL | Foo.bar();

View file

@ -1,4 +1,4 @@
error[E0004]: non-exhaustive patterns: type () is non-empty error[E0004]: non-exhaustive patterns: type `()` is non-empty
--> $DIR/issue-3096-1.rs:12:11 --> $DIR/issue-3096-1.rs:12:11
| |
LL | match () { } //~ ERROR non-exhaustive LL | match () { } //~ ERROR non-exhaustive

View file

@ -1,4 +1,4 @@
error[E0004]: non-exhaustive patterns: type *const bottom is non-empty error[E0004]: non-exhaustive patterns: type `*const bottom` is non-empty
--> $DIR/issue-3096-2.rs:15:11 --> $DIR/issue-3096-2.rs:15:11
| |
LL | match x { } //~ ERROR non-exhaustive patterns LL | match x { } //~ ERROR non-exhaustive patterns

View file

@ -42,5 +42,5 @@ fn main() {
let t = Top::new(); let t = Top::new();
let x: &Bottom = &t; let x: &Bottom = &t;
//~^ ERROR mismatched types //~^ ERROR mismatched types
//~| ERROR reached the recursion limit while auto-dereferencing I //~| ERROR reached the recursion limit while auto-dereferencing `I`
} }

View file

@ -1,4 +1,4 @@
error[E0055]: reached the recursion limit while auto-dereferencing I error[E0055]: reached the recursion limit while auto-dereferencing `I`
--> $DIR/issue-38940.rs:43:22 --> $DIR/issue-38940.rs:43:22
| |
LL | let x: &Bottom = &t; LL | let x: &Bottom = &t;

View file

@ -4,7 +4,7 @@ error[E0004]: non-exhaustive patterns: `Err(_)` not covered
LL | let _ = match x { //~ ERROR non-exhaustive LL | let _ = match x { //~ ERROR non-exhaustive
| ^ pattern `Err(_)` not covered | ^ pattern `Err(_)` not covered
error[E0004]: non-exhaustive patterns: type &Void is non-empty error[E0004]: non-exhaustive patterns: type `&Void` is non-empty
--> $DIR/uninhabited-matches-feature-gated.rs:20:19 --> $DIR/uninhabited-matches-feature-gated.rs:20:19
| |
LL | let _ = match x {}; //~ ERROR non-exhaustive LL | let _ = match x {}; //~ ERROR non-exhaustive
@ -16,7 +16,7 @@ help: ensure that all possible cases are being handled, possibly by adding wildc
LL | let _ = match x {}; //~ ERROR non-exhaustive LL | let _ = match x {}; //~ ERROR non-exhaustive
| ^ | ^
error[E0004]: non-exhaustive patterns: type (Void,) is non-empty error[E0004]: non-exhaustive patterns: type `(Void,)` is non-empty
--> $DIR/uninhabited-matches-feature-gated.rs:23:19 --> $DIR/uninhabited-matches-feature-gated.rs:23:19
| |
LL | let _ = match x {}; //~ ERROR non-exhaustive LL | let _ = match x {}; //~ ERROR non-exhaustive
@ -28,7 +28,7 @@ help: ensure that all possible cases are being handled, possibly by adding wildc
LL | let _ = match x {}; //~ ERROR non-exhaustive LL | let _ = match x {}; //~ ERROR non-exhaustive
| ^ | ^
error[E0004]: non-exhaustive patterns: type [Void; 1] is non-empty error[E0004]: non-exhaustive patterns: type `[Void; 1]` is non-empty
--> $DIR/uninhabited-matches-feature-gated.rs:26:19 --> $DIR/uninhabited-matches-feature-gated.rs:26:19
| |
LL | let _ = match x {}; //~ ERROR non-exhaustive LL | let _ = match x {}; //~ ERROR non-exhaustive