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:
commit
aebf07e3eb
@ -234,7 +234,7 @@ fn check_match(
|
||||
if !scrutinee_is_uninhabited {
|
||||
// We know the type is inhabited, so this must be wrong
|
||||
let mut err = create_e0004(self.tcx.sess, scrut.span,
|
||||
format!("non-exhaustive patterns: type {} \
|
||||
format!("non-exhaustive patterns: type `{}` \
|
||||
is non-empty",
|
||||
pat_ty));
|
||||
span_help!(&mut err, scrut.span,
|
||||
|
@ -59,7 +59,7 @@ fn next(&mut self) -> Option<Self::Item> {
|
||||
if self.steps.len() >= *tcx.sess.recursion_limit.get() {
|
||||
// We've reached the recursion limit, error gracefully.
|
||||
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);
|
||||
let error_id = (DiagnosticMessageId::ErrorId(55), Some(self.span), msg);
|
||||
let fresh = tcx.sess.one_time_diagnostics.borrow_mut().insert(error_id);
|
||||
@ -67,7 +67,7 @@ fn next(&mut self) -> Option<Self::Item> {
|
||||
struct_span_err!(tcx.sess,
|
||||
self.span,
|
||||
E0055,
|
||||
"reached the recursion limit while auto-dereferencing {:?}",
|
||||
"reached the recursion limit while auto-dereferencing `{:?}`",
|
||||
self.cur_ty)
|
||||
.span_label(self.span, "deref recursion limit reached")
|
||||
.help(&format!(
|
||||
|
@ -538,7 +538,7 @@ fn main() {
|
||||
let 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();
|
||||
}
|
||||
```
|
||||
|
@ -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
|
||||
|
|
||||
LL | let x: &Bottom = &t; //~ ERROR mismatched types
|
||||
|
@ -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
|
||||
|
|
||||
LL | match x { } //~ ERROR E0004
|
||||
|
@ -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
|
||||
|
|
||||
LL | ref_foo.foo();
|
||||
|
@ -7,7 +7,7 @@ LL | x = box x;
|
||||
| cyclic type of infinite size
|
||||
| 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
|
||||
|
|
||||
LL | Foo.foo;
|
||||
@ -15,7 +15,7 @@ LL | Foo.foo;
|
||||
|
|
||||
= 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
|
||||
|
|
||||
LL | Foo.foo;
|
||||
@ -29,7 +29,7 @@ error[E0609]: no field `foo` on type `Foo`
|
||||
LL | Foo.foo;
|
||||
| ^^^ 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
|
||||
|
|
||||
LL | Foo.bar();
|
||||
|
@ -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
|
||||
|
|
||||
LL | match () { } //~ ERROR non-exhaustive
|
||||
|
@ -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
|
||||
|
|
||||
LL | match x { } //~ ERROR non-exhaustive patterns
|
||||
|
@ -42,5 +42,5 @@ fn main() {
|
||||
let t = Top::new();
|
||||
let x: &Bottom = &t;
|
||||
//~^ ERROR mismatched types
|
||||
//~| ERROR reached the recursion limit while auto-dereferencing I
|
||||
//~| ERROR reached the recursion limit while auto-dereferencing `I`
|
||||
}
|
||||
|
@ -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
|
||||
|
|
||||
LL | let x: &Bottom = &t;
|
||||
|
@ -4,7 +4,7 @@ error[E0004]: non-exhaustive patterns: `Err(_)` not covered
|
||||
LL | let _ = match x { //~ ERROR non-exhaustive
|
||||
| ^ 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
|
||||
|
|
||||
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
|
||||
| ^
|
||||
|
||||
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
|
||||
|
|
||||
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
|
||||
| ^
|
||||
|
||||
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
|
||||
|
|
||||
LL | let _ = match x {}; //~ ERROR non-exhaustive
|
||||
|
Loading…
Reference in New Issue
Block a user