1
Fork 0

Reword the "unreachable pattern" explanations

This commit is contained in:
Nadrieril 2024-08-19 20:51:21 +02:00
parent 0f442e265c
commit 25964b541e
44 changed files with 495 additions and 495 deletions

View file

@ -330,11 +330,11 @@ mir_build_unreachable_making_this_unreachable = collectively making this unreach
mir_build_unreachable_matches_same_values = matches some of the same values mir_build_unreachable_matches_same_values = matches some of the same values
mir_build_unreachable_pattern = unreachable pattern mir_build_unreachable_pattern = unreachable pattern
.label = unreachable pattern .label = no value can reach this
.unreachable_matches_no_values = this pattern matches no values because `{$ty}` is uninhabited .unreachable_matches_no_values = matches no values because `{$ty}` is uninhabited
.unreachable_covered_by_catchall = matches any value .unreachable_covered_by_catchall = matches any value
.unreachable_covered_by_one = matches all the values already .unreachable_covered_by_one = matches all the relevant values
.unreachable_covered_by_many = these patterns collectively make the last one unreachable .unreachable_covered_by_many = multiple earlier patterns match some of the same values
mir_build_unsafe_fn_safe_body = an unsafe function restricts its caller, but its body is safe by default mir_build_unsafe_fn_safe_body = an unsafe function restricts its caller, but its body is safe by default
mir_build_unsafe_not_inherited = items do not inherit unsafety from separate enclosing items mir_build_unsafe_not_inherited = items do not inherit unsafety from separate enclosing items

View file

@ -2,9 +2,9 @@ warning: unreachable pattern
--> $DIR/packed_pattern.rs:16:9 --> $DIR/packed_pattern.rs:16:9
| |
LL | Foo { field: (5, 6, 7, 8) } => {}, LL | Foo { field: (5, 6, 7, 8) } => {},
| --------------------------- matches all the values already | --------------------------- matches all the relevant values
LL | FOO => unreachable!(), LL | FOO => unreachable!(),
| ^^^ unreachable pattern | ^^^ no value can reach this
| |
= note: `#[warn(unreachable_patterns)]` on by default = note: `#[warn(unreachable_patterns)]` on by default

View file

@ -2,9 +2,9 @@ warning: unreachable pattern
--> $DIR/packed_pattern2.rs:24:9 --> $DIR/packed_pattern2.rs:24:9
| |
LL | Bar { a: Foo { field: (5, 6) } } => {}, LL | Bar { a: Foo { field: (5, 6) } } => {},
| -------------------------------- matches all the values already | -------------------------------- matches all the relevant values
LL | FOO => unreachable!(), LL | FOO => unreachable!(),
| ^^^ unreachable pattern | ^^^ no value can reach this
| |
= note: `#[warn(unreachable_patterns)]` on by default = note: `#[warn(unreachable_patterns)]` on by default

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/E0001.rs:8:9 --> $DIR/E0001.rs:8:9
| |
LL | _ => {/* ... */} LL | _ => {/* ... */}
| ^ unreachable pattern | ^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/E0001.rs:8:9 --> $DIR/E0001.rs:8:9
| |
LL | Some(_) => {/* ... */} LL | Some(_) => {/* ... */}

View file

@ -13,7 +13,7 @@ LL | Nil => true,
| --- matches any value | --- matches any value
LL | LL |
LL | _ => false LL | _ => false
| ^ unreachable pattern | ^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-30302.rs:4:9 --> $DIR/issue-30302.rs:4:9

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:8:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:8:9
| |
LL | (1 | 2,) => {} LL | (1 | 2,) => {}
| -------- matches all the values already | -------- matches all the relevant values
LL | (1,) => {} LL | (1,) => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/exhaustiveness-unreachable-pattern.rs:1:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:1:9
@ -16,17 +16,17 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:13:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:13:9
| |
LL | (1 | 2,) => {} LL | (1 | 2,) => {}
| -------- matches all the values already | -------- matches all the relevant values
LL | (2,) => {} LL | (2,) => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:19:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:19:9
| |
LL | (1 | 2,) => {} LL | (1 | 2,) => {}
| ^^^^^^^^ unreachable pattern | ^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:19:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:19:9
| |
LL | (1,) => {} LL | (1,) => {}
@ -40,44 +40,44 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:24:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:24:9
| |
LL | (1 | 2, 3 | 4) => {} LL | (1 | 2, 3 | 4) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
LL | (1, 3) => {} LL | (1, 3) => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:25:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:25:9
| |
LL | (1 | 2, 3 | 4) => {} LL | (1 | 2, 3 | 4) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
LL | (1, 3) => {} LL | (1, 3) => {}
LL | (1, 4) => {} LL | (1, 4) => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:26:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:26:9
| |
LL | (1 | 2, 3 | 4) => {} LL | (1 | 2, 3 | 4) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
... ...
LL | (2, 4) => {} LL | (2, 4) => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:27:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:27:9
| |
LL | (1 | 2, 3 | 4) => {} LL | (1 | 2, 3 | 4) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
... ...
LL | (2 | 1, 4) => {} LL | (2 | 1, 4) => {}
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:29:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:29:9
| |
LL | (1, 4 | 5) => {} LL | (1, 4 | 5) => {}
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:29:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:29:9
| |
LL | (1 | 2, 3 | 4) => {} LL | (1 | 2, 3 | 4) => {}
@ -92,107 +92,107 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:34:13 --> $DIR/exhaustiveness-unreachable-pattern.rs:34:13
| |
LL | (0, 0, 0) => {} LL | (0, 0, 0) => {}
| - matches all the values already | - matches all the relevant values
LL | (0, 0 | 1, 0) => {} LL | (0, 0 | 1, 0) => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:42:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:42:9
| |
LL | (None | Some(1 | 2),) => {} LL | (None | Some(1 | 2),) => {}
| --------------------- matches all the values already | --------------------- matches all the relevant values
LL | (Some(1),) => {} LL | (Some(1),) => {}
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:43:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:43:9
| |
LL | (None | Some(1 | 2),) => {} LL | (None | Some(1 | 2),) => {}
| --------------------- matches all the values already | --------------------- matches all the relevant values
LL | (Some(1),) => {} LL | (Some(1),) => {}
LL | (None,) => {} LL | (None,) => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:48:9 --> $DIR/exhaustiveness-unreachable-pattern.rs:48:9
| |
LL | ((1 | 2,) | (3 | 4,),) => {} LL | ((1 | 2,) | (3 | 4,),) => {}
| ---------------------- matches all the values already | ---------------------- matches all the relevant values
LL | ((1..=4,),) => {} LL | ((1..=4,),) => {}
| ^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:53:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:53:14
| |
LL | (1 | 1,) => {} LL | (1 | 1,) => {}
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:57:19 --> $DIR/exhaustiveness-unreachable-pattern.rs:57:19
| |
LL | (0 | 1) | 1 => {} LL | (0 | 1) | 1 => {}
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:63:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:63:14
| |
LL | 0 | (0 | 0) => {} LL | 0 | (0 | 0) => {}
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:63:18 --> $DIR/exhaustiveness-unreachable-pattern.rs:63:18
| |
LL | 0 | (0 | 0) => {} LL | 0 | (0 | 0) => {}
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:71:13 --> $DIR/exhaustiveness-unreachable-pattern.rs:71:13
| |
LL | Some(0) | LL | Some(0) |
| ------- matches all the values already | ------- matches all the relevant values
LL | / Some( LL | / Some(
LL | | 0 | 0) => {} LL | | 0 | 0) => {}
| |______________________^ unreachable pattern | |______________________^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:77:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:77:15
| |
LL | [0 LL | [0
| - matches all the values already | - matches all the relevant values
LL | | 0 LL | | 0
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:79:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:79:15
| |
LL | , 0 LL | , 0
| - matches all the values already | - matches all the relevant values
LL | | 0] => {} LL | | 0] => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:83:20 --> $DIR/exhaustiveness-unreachable-pattern.rs:83:20
| |
LL | (true, 0 | 0) => {} LL | (true, 0 | 0) => {}
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:84:17 --> $DIR/exhaustiveness-unreachable-pattern.rs:84:17
| |
LL | (_, 0 | 0) => {} LL | (_, 0 | 0) => {}
| ^ unreachable pattern | ^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:84:17 --> $DIR/exhaustiveness-unreachable-pattern.rs:84:17
| |
LL | (true, 0 | 0) => {} LL | (true, 0 | 0) => {}
@ -206,25 +206,25 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:92:10 --> $DIR/exhaustiveness-unreachable-pattern.rs:92:10
| |
LL | [1, ..] => {} LL | [1, ..] => {}
| - matches all the values already | - matches all the relevant values
LL | [1 LL | [1
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:104:10 --> $DIR/exhaustiveness-unreachable-pattern.rs:104:10
| |
LL | [true, ..] => {} LL | [true, ..] => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | [true LL | [true
| ^^^^ unreachable pattern | ^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:111:36 --> $DIR/exhaustiveness-unreachable-pattern.rs:111:36
| |
LL | (true | false, None | Some(true LL | (true | false, None | Some(true
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:111:36 --> $DIR/exhaustiveness-unreachable-pattern.rs:111:36
| |
LL | (true, Some(_)) => {} LL | (true, Some(_)) => {}
@ -238,12 +238,12 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:116:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:116:14
| |
LL | (true LL | (true
| ^^^^ unreachable pattern | ^^^^ no value can reach this
... ...
LL | (true | false, None | Some(t_or_f!())) => {} LL | (true | false, None | Some(t_or_f!())) => {}
| --------- in this macro invocation | --------- in this macro invocation
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:116:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:116:14
| |
LL | (true LL | (true
@ -261,26 +261,26 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:127:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:127:14
| |
LL | Some(0) => {} LL | Some(0) => {}
| - matches all the values already | - matches all the relevant values
LL | Some(0 LL | Some(0
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:146:19 --> $DIR/exhaustiveness-unreachable-pattern.rs:146:19
| |
LL | Some(false) => {} LL | Some(false) => {}
| ----- matches all the values already | ----- matches all the relevant values
LL | None | Some(true LL | None | Some(true
LL | | false) => {} LL | | false) => {}
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:154:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:154:15
| |
LL | | true) => {} LL | | true) => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:154:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:154:15
| |
LL | (false, true) => {} LL | (false, true) => {}
@ -295,9 +295,9 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:160:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:160:15
| |
LL | | true, LL | | true,
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/exhaustiveness-unreachable-pattern.rs:160:15 --> $DIR/exhaustiveness-unreachable-pattern.rs:160:15
| |
LL | (true, false) => {} LL | (true, false) => {}
@ -314,13 +314,13 @@ error: unreachable pattern
LL | (x, y) LL | (x, y)
| ------ matches any value | ------ matches any value
LL | | (y, x) => {} LL | | (y, x) => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:169:30 --> $DIR/exhaustiveness-unreachable-pattern.rs:169:30
| |
LL | fn unreachable_in_param((_ | (_, _)): (bool, bool)) {} LL | fn unreachable_in_param((_ | (_, _)): (bool, bool)) {}
| - ^^^^^^ unreachable pattern | - ^^^^^^ no value can reach this
| | | |
| matches any value | matches any value
@ -328,7 +328,7 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:176:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:176:14
| |
LL | let (_ | (_, _)) = bool_pair; LL | let (_ | (_, _)) = bool_pair;
| - ^^^^^^ unreachable pattern | - ^^^^^^ no value can reach this
| | | |
| matches any value | matches any value
@ -336,7 +336,7 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:178:14 --> $DIR/exhaustiveness-unreachable-pattern.rs:178:14
| |
LL | for (_ | (_, _)) in [bool_pair] {} LL | for (_ | (_, _)) in [bool_pair] {}
| - ^^^^^^ unreachable pattern | - ^^^^^^ no value can reach this
| | | |
| matches any value | matches any value
@ -344,25 +344,25 @@ error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:181:20 --> $DIR/exhaustiveness-unreachable-pattern.rs:181:20
| |
LL | let (Some(_) | Some(true)) = bool_option else { return }; LL | let (Some(_) | Some(true)) = bool_option else { return };
| ------- ^^^^^^^^^^ unreachable pattern | ------- ^^^^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:183:22 --> $DIR/exhaustiveness-unreachable-pattern.rs:183:22
| |
LL | if let Some(_) | Some(true) = bool_option {} LL | if let Some(_) | Some(true) = bool_option {}
| ------- ^^^^^^^^^^ unreachable pattern | ------- ^^^^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/exhaustiveness-unreachable-pattern.rs:185:25 --> $DIR/exhaustiveness-unreachable-pattern.rs:185:25
| |
LL | while let Some(_) | Some(true) = bool_option {} LL | while let Some(_) | Some(true) = bool_option {}
| ------- ^^^^^^^^^^ unreachable pattern | ------- ^^^^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: aborting due to 36 previous errors error: aborting due to 36 previous errors

View file

@ -19,7 +19,7 @@ LL | A => "A",
| - matches any value | - matches any value
LL | LL |
LL | B => "B", LL | B => "B",
| ^ unreachable pattern | ^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-14221.rs:1:9 --> $DIR/issue-14221.rs:1:9

View file

@ -52,7 +52,7 @@ error: unreachable pattern
LL | Bar => {} LL | Bar => {}
| --- matches any value | --- matches any value
LL | BAR => {} LL | BAR => {}
| ^^^ unreachable pattern | ^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/consts-opaque.rs:6:9 --> $DIR/consts-opaque.rs:6:9
@ -67,7 +67,7 @@ LL | Bar => {}
| --- matches any value | --- matches any value
... ...
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:56:9 --> $DIR/consts-opaque.rs:56:9
@ -75,7 +75,7 @@ error: unreachable pattern
LL | BAR => {} LL | BAR => {}
| --- matches any value | --- matches any value
LL | Bar => {} LL | Bar => {}
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:58:9 --> $DIR/consts-opaque.rs:58:9
@ -84,7 +84,7 @@ LL | BAR => {}
| --- matches any value | --- matches any value
... ...
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:64:9 --> $DIR/consts-opaque.rs:64:9
@ -92,7 +92,7 @@ error: unreachable pattern
LL | BAR => {} LL | BAR => {}
| --- matches any value | --- matches any value
LL | BAR => {} // should not be emitting unreachable warning LL | BAR => {} // should not be emitting unreachable warning
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:66:9 --> $DIR/consts-opaque.rs:66:9
@ -101,31 +101,31 @@ LL | BAR => {}
| --- matches any value | --- matches any value
... ...
LL | _ => {} // should not be emitting unreachable warning LL | _ => {} // should not be emitting unreachable warning
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:72:9 --> $DIR/consts-opaque.rs:72:9
| |
LL | BAZ => {} LL | BAZ => {}
| --- matches all the values already | --- matches all the relevant values
LL | Baz::Baz1 => {} // should not be emitting unreachable warning LL | Baz::Baz1 => {} // should not be emitting unreachable warning
| ^^^^^^^^^ unreachable pattern | ^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:79:9 --> $DIR/consts-opaque.rs:79:9
| |
LL | Baz::Baz1 => {} LL | Baz::Baz1 => {}
| --------- matches all the values already | --------- matches all the relevant values
LL | BAZ => {} LL | BAZ => {}
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/consts-opaque.rs:87:9 --> $DIR/consts-opaque.rs:87:9
| |
LL | _ => {} // should not be emitting unreachable warning LL | _ => {} // should not be emitting unreachable warning
| ^ unreachable pattern | ^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/consts-opaque.rs:87:9 --> $DIR/consts-opaque.rs:87:9
| |
LL | BAZ => {} LL | BAZ => {}

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyEnum` is uninhabited = note: matches no values because `EmptyEnum` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/empty-match-check-notes.rs:7:9 --> $DIR/empty-match-check-notes.rs:7:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyEnum` is uninhabited = note: matches no values because `EmptyEnum` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-match-check-notes.rs:29:9 --> $DIR/empty-match-check-notes.rs:29:9
@ -25,7 +25,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyForeignEnum` is uninhabited = note: matches no values because `EmptyForeignEnum` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-match-check-notes.rs:33:9 --> $DIR/empty-match-check-notes.rs:33:9
@ -33,7 +33,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyForeignEnum` is uninhabited = note: matches no values because `EmptyForeignEnum` is uninhabited
error[E0005]: refutable pattern in local binding error[E0005]: refutable pattern in local binding
--> $DIR/empty-match-check-notes.rs:39:9 --> $DIR/empty-match-check-notes.rs:39:9

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyEnum` is uninhabited = note: matches no values because `EmptyEnum` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/empty-match-check-notes.rs:7:9 --> $DIR/empty-match-check-notes.rs:7:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyEnum` is uninhabited = note: matches no values because `EmptyEnum` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-match-check-notes.rs:29:9 --> $DIR/empty-match-check-notes.rs:29:9
@ -25,7 +25,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyForeignEnum` is uninhabited = note: matches no values because `EmptyForeignEnum` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-match-check-notes.rs:33:9 --> $DIR/empty-match-check-notes.rs:33:9
@ -33,7 +33,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyForeignEnum` is uninhabited = note: matches no values because `EmptyForeignEnum` is uninhabited
error[E0005]: refutable pattern in local binding error[E0005]: refutable pattern in local binding
--> $DIR/empty-match-check-notes.rs:39:9 --> $DIR/empty-match-check-notes.rs:39:9

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/empty-types.rs:15:9 --> $DIR/empty-types.rs:15:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: type `&!` is non-empty error[E0004]: non-exhaustive patterns: type `&!` is non-empty
--> $DIR/empty-types.rs:56:11 --> $DIR/empty-types.rs:56:11
@ -40,7 +40,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(u32, !)` is uninhabited = note: matches no values because `(u32, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:76:9 --> $DIR/empty-types.rs:76:9
@ -48,7 +48,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:79:9 --> $DIR/empty-types.rs:79:9
@ -56,7 +56,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:83:9 --> $DIR/empty-types.rs:83:9
@ -64,7 +64,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(_)` not covered error[E0004]: non-exhaustive patterns: `Ok(_)` not covered
--> $DIR/empty-types.rs:87:11 --> $DIR/empty-types.rs:87:11
@ -91,7 +91,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:99:9 --> $DIR/empty-types.rs:99:9
@ -99,7 +99,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered
--> $DIR/empty-types.rs:96:11 --> $DIR/empty-types.rs:96:11
@ -139,7 +139,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:115:9 --> $DIR/empty-types.rs:115:9
@ -147,7 +147,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:118:9 --> $DIR/empty-types.rs:118:9
@ -155,7 +155,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:119:9 --> $DIR/empty-types.rs:119:9
@ -163,7 +163,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:122:9 --> $DIR/empty-types.rs:122:9
@ -171,7 +171,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:123:9 --> $DIR/empty-types.rs:123:9
@ -179,7 +179,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:132:13 --> $DIR/empty-types.rs:132:13
@ -187,7 +187,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:135:13 --> $DIR/empty-types.rs:135:13
@ -195,7 +195,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:143:13 --> $DIR/empty-types.rs:143:13
@ -203,15 +203,15 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:147:13 --> $DIR/empty-types.rs:147:13
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:199:13 --> $DIR/empty-types.rs:199:13
@ -219,7 +219,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:204:13 --> $DIR/empty-types.rs:204:13
@ -227,7 +227,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:209:13 --> $DIR/empty-types.rs:209:13
@ -235,7 +235,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:214:13 --> $DIR/empty-types.rs:214:13
@ -243,7 +243,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:220:13 --> $DIR/empty-types.rs:220:13
@ -251,7 +251,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:281:9 --> $DIR/empty-types.rs:281:9
@ -259,7 +259,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:284:9 --> $DIR/empty-types.rs:284:9
@ -267,7 +267,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:287:9 --> $DIR/empty-types.rs:287:9
@ -275,7 +275,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:288:9 --> $DIR/empty-types.rs:288:9
@ -283,7 +283,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error[E0004]: non-exhaustive patterns: type `&[!]` is non-empty error[E0004]: non-exhaustive patterns: type `&[!]` is non-empty
--> $DIR/empty-types.rs:327:11 --> $DIR/empty-types.rs:327:11
@ -346,7 +346,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:371:9 --> $DIR/empty-types.rs:371:9
@ -354,7 +354,7 @@ error: unreachable pattern
LL | [_, _, _] => {} LL | [_, _, _] => {}
| ^^^^^^^^^ | ^^^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:374:9 --> $DIR/empty-types.rs:374:9
@ -362,7 +362,7 @@ error: unreachable pattern
LL | [_, ..] => {} LL | [_, ..] => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty
--> $DIR/empty-types.rs:388:11 --> $DIR/empty-types.rs:388:11
@ -382,9 +382,9 @@ error: unreachable pattern
--> $DIR/empty-types.rs:395:9 --> $DIR/empty-types.rs:395:9
| |
LL | [] => {} LL | [] => {}
| -- matches all the values already | -- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error[E0004]: non-exhaustive patterns: `[]` not covered error[E0004]: non-exhaustive patterns: `[]` not covered
--> $DIR/empty-types.rs:397:11 --> $DIR/empty-types.rs:397:11
@ -406,7 +406,7 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:421:9 --> $DIR/empty-types.rs:421:9
@ -414,25 +414,25 @@ error: unreachable pattern
LL | Some(_a) => {} LL | Some(_a) => {}
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:426:9 --> $DIR/empty-types.rs:426:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:431:9 --> $DIR/empty-types.rs:431:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _a => {} LL | _a => {}
| ^^ unreachable pattern | ^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:603:9 --> $DIR/empty-types.rs:603:9
@ -440,7 +440,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:606:9 --> $DIR/empty-types.rs:606:9
@ -448,7 +448,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:609:9 --> $DIR/empty-types.rs:609:9
@ -456,7 +456,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:612:9 --> $DIR/empty-types.rs:612:9
@ -464,7 +464,7 @@ error: unreachable pattern
LL | _x if false => {} LL | _x if false => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: aborting due to 49 previous errors error: aborting due to 49 previous errors

View file

@ -13,7 +13,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/empty-types.rs:15:9 --> $DIR/empty-types.rs:15:9
| |
@ -26,7 +26,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: type `&!` is non-empty error[E0004]: non-exhaustive patterns: type `&!` is non-empty
--> $DIR/empty-types.rs:56:11 --> $DIR/empty-types.rs:56:11
@ -49,7 +49,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(u32, !)` is uninhabited = note: matches no values because `(u32, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:76:9 --> $DIR/empty-types.rs:76:9
@ -57,7 +57,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:79:9 --> $DIR/empty-types.rs:79:9
@ -65,7 +65,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:83:9 --> $DIR/empty-types.rs:83:9
@ -73,7 +73,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(_)` not covered error[E0004]: non-exhaustive patterns: `Ok(_)` not covered
--> $DIR/empty-types.rs:87:11 --> $DIR/empty-types.rs:87:11
@ -100,7 +100,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:99:9 --> $DIR/empty-types.rs:99:9
@ -108,7 +108,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered
--> $DIR/empty-types.rs:96:11 --> $DIR/empty-types.rs:96:11
@ -162,7 +162,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:115:9 --> $DIR/empty-types.rs:115:9
@ -170,7 +170,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:118:9 --> $DIR/empty-types.rs:118:9
@ -178,7 +178,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:119:9 --> $DIR/empty-types.rs:119:9
@ -186,7 +186,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:122:9 --> $DIR/empty-types.rs:122:9
@ -194,7 +194,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:123:9 --> $DIR/empty-types.rs:123:9
@ -202,7 +202,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:132:13 --> $DIR/empty-types.rs:132:13
@ -210,7 +210,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:135:13 --> $DIR/empty-types.rs:135:13
@ -218,7 +218,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:143:13 --> $DIR/empty-types.rs:143:13
@ -226,15 +226,15 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:147:13 --> $DIR/empty-types.rs:147:13
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error[E0004]: non-exhaustive patterns: `Some(!)` not covered error[E0004]: non-exhaustive patterns: `Some(!)` not covered
--> $DIR/empty-types.rs:156:15 --> $DIR/empty-types.rs:156:15
@ -261,7 +261,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:204:13 --> $DIR/empty-types.rs:204:13
@ -269,7 +269,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:209:13 --> $DIR/empty-types.rs:209:13
@ -277,7 +277,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:214:13 --> $DIR/empty-types.rs:214:13
@ -285,7 +285,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:220:13 --> $DIR/empty-types.rs:220:13
@ -293,7 +293,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:281:9 --> $DIR/empty-types.rs:281:9
@ -301,7 +301,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:284:9 --> $DIR/empty-types.rs:284:9
@ -309,7 +309,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:287:9 --> $DIR/empty-types.rs:287:9
@ -317,7 +317,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:288:9 --> $DIR/empty-types.rs:288:9
@ -325,7 +325,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error[E0005]: refutable pattern in local binding error[E0005]: refutable pattern in local binding
--> $DIR/empty-types.rs:297:13 --> $DIR/empty-types.rs:297:13
@ -480,7 +480,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:371:9 --> $DIR/empty-types.rs:371:9
@ -488,7 +488,7 @@ error: unreachable pattern
LL | [_, _, _] => {} LL | [_, _, _] => {}
| ^^^^^^^^^ | ^^^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:374:9 --> $DIR/empty-types.rs:374:9
@ -496,7 +496,7 @@ error: unreachable pattern
LL | [_, ..] => {} LL | [_, ..] => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty
--> $DIR/empty-types.rs:388:11 --> $DIR/empty-types.rs:388:11
@ -516,9 +516,9 @@ error: unreachable pattern
--> $DIR/empty-types.rs:395:9 --> $DIR/empty-types.rs:395:9
| |
LL | [] => {} LL | [] => {}
| -- matches all the values already | -- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error[E0004]: non-exhaustive patterns: `[]` not covered error[E0004]: non-exhaustive patterns: `[]` not covered
--> $DIR/empty-types.rs:397:11 --> $DIR/empty-types.rs:397:11
@ -540,7 +540,7 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:421:9 --> $DIR/empty-types.rs:421:9
@ -548,25 +548,25 @@ error: unreachable pattern
LL | Some(_a) => {} LL | Some(_a) => {}
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:426:9 --> $DIR/empty-types.rs:426:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:431:9 --> $DIR/empty-types.rs:431:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _a => {} LL | _a => {}
| ^^ unreachable pattern | ^^ no value can reach this
error[E0004]: non-exhaustive patterns: `&Some(!)` not covered error[E0004]: non-exhaustive patterns: `&Some(!)` not covered
--> $DIR/empty-types.rs:451:11 --> $DIR/empty-types.rs:451:11
@ -664,7 +664,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:606:9 --> $DIR/empty-types.rs:606:9
@ -672,7 +672,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:609:9 --> $DIR/empty-types.rs:609:9
@ -680,7 +680,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:612:9 --> $DIR/empty-types.rs:612:9
@ -688,7 +688,7 @@ error: unreachable pattern
LL | _x if false => {} LL | _x if false => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `&!` not covered error[E0004]: non-exhaustive patterns: `&!` not covered
--> $DIR/empty-types.rs:637:11 --> $DIR/empty-types.rs:637:11

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/empty-types.rs:15:9 --> $DIR/empty-types.rs:15:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: type `&!` is non-empty error[E0004]: non-exhaustive patterns: type `&!` is non-empty
--> $DIR/empty-types.rs:56:11 --> $DIR/empty-types.rs:56:11
@ -40,7 +40,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(u32, !)` is uninhabited = note: matches no values because `(u32, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:76:9 --> $DIR/empty-types.rs:76:9
@ -48,7 +48,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:79:9 --> $DIR/empty-types.rs:79:9
@ -56,7 +56,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:83:9 --> $DIR/empty-types.rs:83:9
@ -64,7 +64,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(_)` not covered error[E0004]: non-exhaustive patterns: `Ok(_)` not covered
--> $DIR/empty-types.rs:87:11 --> $DIR/empty-types.rs:87:11
@ -91,7 +91,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:99:9 --> $DIR/empty-types.rs:99:9
@ -99,7 +99,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered
--> $DIR/empty-types.rs:96:11 --> $DIR/empty-types.rs:96:11
@ -153,7 +153,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:115:9 --> $DIR/empty-types.rs:115:9
@ -161,7 +161,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:118:9 --> $DIR/empty-types.rs:118:9
@ -169,7 +169,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:119:9 --> $DIR/empty-types.rs:119:9
@ -177,7 +177,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:122:9 --> $DIR/empty-types.rs:122:9
@ -185,7 +185,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:123:9 --> $DIR/empty-types.rs:123:9
@ -193,7 +193,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:132:13 --> $DIR/empty-types.rs:132:13
@ -201,7 +201,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:135:13 --> $DIR/empty-types.rs:135:13
@ -209,7 +209,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:143:13 --> $DIR/empty-types.rs:143:13
@ -217,15 +217,15 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:147:13 --> $DIR/empty-types.rs:147:13
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error[E0004]: non-exhaustive patterns: `Some(_)` not covered error[E0004]: non-exhaustive patterns: `Some(_)` not covered
--> $DIR/empty-types.rs:156:15 --> $DIR/empty-types.rs:156:15
@ -252,7 +252,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:204:13 --> $DIR/empty-types.rs:204:13
@ -260,7 +260,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:209:13 --> $DIR/empty-types.rs:209:13
@ -268,7 +268,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:214:13 --> $DIR/empty-types.rs:214:13
@ -276,7 +276,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:220:13 --> $DIR/empty-types.rs:220:13
@ -284,7 +284,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:281:9 --> $DIR/empty-types.rs:281:9
@ -292,7 +292,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:284:9 --> $DIR/empty-types.rs:284:9
@ -300,7 +300,7 @@ error: unreachable pattern
LL | (_, _) => {} LL | (_, _) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `(!, !)` is uninhabited = note: matches no values because `(!, !)` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:287:9 --> $DIR/empty-types.rs:287:9
@ -308,7 +308,7 @@ error: unreachable pattern
LL | Ok(_) => {} LL | Ok(_) => {}
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:288:9 --> $DIR/empty-types.rs:288:9
@ -316,7 +316,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Result<!, !>` is uninhabited = note: matches no values because `Result<!, !>` is uninhabited
error[E0005]: refutable pattern in local binding error[E0005]: refutable pattern in local binding
--> $DIR/empty-types.rs:297:13 --> $DIR/empty-types.rs:297:13
@ -471,7 +471,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:371:9 --> $DIR/empty-types.rs:371:9
@ -479,7 +479,7 @@ error: unreachable pattern
LL | [_, _, _] => {} LL | [_, _, _] => {}
| ^^^^^^^^^ | ^^^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:374:9 --> $DIR/empty-types.rs:374:9
@ -487,7 +487,7 @@ error: unreachable pattern
LL | [_, ..] => {} LL | [_, ..] => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `[!; 3]` is uninhabited = note: matches no values because `[!; 3]` is uninhabited
error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty
--> $DIR/empty-types.rs:388:11 --> $DIR/empty-types.rs:388:11
@ -507,9 +507,9 @@ error: unreachable pattern
--> $DIR/empty-types.rs:395:9 --> $DIR/empty-types.rs:395:9
| |
LL | [] => {} LL | [] => {}
| -- matches all the values already | -- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error[E0004]: non-exhaustive patterns: `[]` not covered error[E0004]: non-exhaustive patterns: `[]` not covered
--> $DIR/empty-types.rs:397:11 --> $DIR/empty-types.rs:397:11
@ -531,7 +531,7 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:421:9 --> $DIR/empty-types.rs:421:9
@ -539,25 +539,25 @@ error: unreachable pattern
LL | Some(_a) => {} LL | Some(_a) => {}
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:426:9 --> $DIR/empty-types.rs:426:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:431:9 --> $DIR/empty-types.rs:431:9
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | // !useful, !reachable LL | // !useful, !reachable
LL | _a => {} LL | _a => {}
| ^^ unreachable pattern | ^^ no value can reach this
error[E0004]: non-exhaustive patterns: `&Some(_)` not covered error[E0004]: non-exhaustive patterns: `&Some(_)` not covered
--> $DIR/empty-types.rs:451:11 --> $DIR/empty-types.rs:451:11
@ -655,7 +655,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:606:9 --> $DIR/empty-types.rs:606:9
@ -663,7 +663,7 @@ error: unreachable pattern
LL | _x => {} LL | _x => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:609:9 --> $DIR/empty-types.rs:609:9
@ -671,7 +671,7 @@ error: unreachable pattern
LL | _ if false => {} LL | _ if false => {}
| ^ | ^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/empty-types.rs:612:9 --> $DIR/empty-types.rs:612:9
@ -679,7 +679,7 @@ error: unreachable pattern
LL | _x if false => {} LL | _x if false => {}
| ^^ | ^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error[E0004]: non-exhaustive patterns: `&_` not covered error[E0004]: non-exhaustive patterns: `&_` not covered
--> $DIR/empty-types.rs:637:11 --> $DIR/empty-types.rs:637:11

View file

@ -6,10 +6,10 @@
fn main() { fn main() {
match (0u8,) { match (0u8,) {
(1 | 2,) => {} (1 | 2,) => {}
//~^ NOTE matches all the values already //~^ NOTE matches all the relevant values
(2,) => {} (2,) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
_ => {} _ => {}
} }
@ -20,8 +20,8 @@ fn main() {
//~^ NOTE matches some of the same values //~^ NOTE matches some of the same values
(1 | 2,) => {} (1 | 2,) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
//~| NOTE these patterns collectively make the last one unreachable //~| NOTE multiple earlier patterns match some of the same values
//~| NOTE collectively making this unreachable //~| NOTE collectively making this unreachable
_ => {} _ => {}
} }
@ -31,7 +31,7 @@ fn main() {
Ok(_) => {} Ok(_) => {}
Err(_) => {} Err(_) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE this pattern matches no values because `!` is uninhabited //~| NOTE matches no values because `!` is uninhabited
} }
#[derive(Copy, Clone)] #[derive(Copy, Clone)]
@ -44,22 +44,22 @@ fn main() {
match (&res1, res2) { match (&res1, res2) {
(Err(_), Err(_)) => {} (Err(_), Err(_)) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE this pattern matches no values because `Void2` is uninhabited //~| NOTE matches no values because `Void2` is uninhabited
_ => {} _ => {}
} }
match (res1, &res2) { match (res1, &res2) {
(Err(_), Err(_)) => {} (Err(_), Err(_)) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE this pattern matches no values because `Void1` is uninhabited //~| NOTE matches no values because `Void1` is uninhabited
_ => {} _ => {}
} }
if let (0 if let (0
//~^ NOTE matches all the values already //~^ NOTE matches all the relevant values
| 0, _) = (0, 0) {} | 0, _) = (0, 0) {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
match (true, true) { match (true, true) {
(_, true) if false => {} // Guarded patterns don't cover others (_, true) if false => {} // Guarded patterns don't cover others
@ -69,20 +69,20 @@ fn main() {
//~^ NOTE matches some of the same values //~^ NOTE matches some of the same values
(_, true) => {} (_, true) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
//~| NOTE these patterns collectively make the last one unreachable //~| NOTE multiple earlier patterns match some of the same values
//~| NOTE collectively making this unreachable //~| NOTE collectively making this unreachable
} }
match (true, true) { match (true, true) {
(true, _) => {} (true, _) => {}
//~^ NOTE matches all the values already //~^ NOTE matches all the relevant values
(false, _) => {} (false, _) => {}
#[allow(unreachable_patterns)] #[allow(unreachable_patterns)]
(_, true) => {} // Doesn't cover below because it's already unreachable. (_, true) => {} // Doesn't cover below because it's already unreachable.
(true, true) => {} (true, true) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
} }
// Despite skipping some irrelevant cases, we still report a set of rows that covers the // Despite skipping some irrelevant cases, we still report a set of rows that covers the
@ -90,11 +90,11 @@ fn main() {
match (true, true, 0) { match (true, true, 0) {
(true, _, _) => {} (true, _, _) => {}
(_, true, 0..10) => {} (_, true, 0..10) => {}
//~^ NOTE matches all the values already //~^ NOTE matches all the relevant values
(_, true, 10..) => {} (_, true, 10..) => {}
(_, true, 3) => {} (_, true, 3) => {}
//~^ ERROR unreachable pattern //~^ ERROR unreachable pattern
//~| NOTE unreachable pattern //~| NOTE no value can reach this
_ => {} _ => {}
} }
} }

View file

@ -2,10 +2,10 @@ error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:10:9 --> $DIR/explain-unreachable-pats.rs:10:9
| |
LL | (1 | 2,) => {} LL | (1 | 2,) => {}
| -------- matches all the values already | -------- matches all the relevant values
LL | LL |
LL | (2,) => {} LL | (2,) => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/explain-unreachable-pats.rs:2:9 --> $DIR/explain-unreachable-pats.rs:2:9
@ -17,9 +17,9 @@ error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:21:9 --> $DIR/explain-unreachable-pats.rs:21:9
| |
LL | (1 | 2,) => {} LL | (1 | 2,) => {}
| ^^^^^^^^ unreachable pattern | ^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/explain-unreachable-pats.rs:21:9 --> $DIR/explain-unreachable-pats.rs:21:9
| |
LL | (1,) => {} LL | (1,) => {}
@ -37,7 +37,7 @@ error: unreachable pattern
LL | Err(_) => {} LL | Err(_) => {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:45:9 --> $DIR/explain-unreachable-pats.rs:45:9
@ -45,7 +45,7 @@ error: unreachable pattern
LL | (Err(_), Err(_)) => {} LL | (Err(_), Err(_)) => {}
| ^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^
| |
= note: this pattern matches no values because `Void2` is uninhabited = note: matches no values because `Void2` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:51:9 --> $DIR/explain-unreachable-pats.rs:51:9
@ -53,24 +53,24 @@ error: unreachable pattern
LL | (Err(_), Err(_)) => {} LL | (Err(_), Err(_)) => {}
| ^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^
| |
= note: this pattern matches no values because `Void1` is uninhabited = note: matches no values because `Void1` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:60:11 --> $DIR/explain-unreachable-pats.rs:60:11
| |
LL | if let (0 LL | if let (0
| - matches all the values already | - matches all the relevant values
LL | LL |
LL | | 0, _) = (0, 0) {} LL | | 0, _) = (0, 0) {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:70:9 --> $DIR/explain-unreachable-pats.rs:70:9
| |
LL | (_, true) => {} LL | (_, true) => {}
| ^^^^^^^^^ unreachable pattern | ^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/explain-unreachable-pats.rs:70:9 --> $DIR/explain-unreachable-pats.rs:70:9
| |
LL | (true, _) => {} LL | (true, _) => {}
@ -86,19 +86,19 @@ error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:83:9 --> $DIR/explain-unreachable-pats.rs:83:9
| |
LL | (true, _) => {} LL | (true, _) => {}
| --------- matches all the values already | --------- matches all the relevant values
... ...
LL | (true, true) => {} LL | (true, true) => {}
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/explain-unreachable-pats.rs:95:9 --> $DIR/explain-unreachable-pats.rs:95:9
| |
LL | (_, true, 0..10) => {} LL | (_, true, 0..10) => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | (_, true, 3) => {} LL | (_, true, 3) => {}
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
error: aborting due to 9 previous errors error: aborting due to 9 previous errors

View file

@ -15,9 +15,9 @@ error: unreachable pattern
--> $DIR/floats.rs:18:9 --> $DIR/floats.rs:18:9
| |
LL | 0.01f16..=6.5f16 => {} LL | 0.01f16..=6.5f16 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | 0.01f16 => {} LL | 0.01f16 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/floats.rs:1:9 --> $DIR/floats.rs:1:9
@ -29,117 +29,117 @@ error: unreachable pattern
--> $DIR/floats.rs:19:9 --> $DIR/floats.rs:19:9
| |
LL | 0.01f16..=6.5f16 => {} LL | 0.01f16..=6.5f16 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | 0.01f16 => {} LL | 0.01f16 => {}
LL | 0.02f16 => {} LL | 0.02f16 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:20:9 --> $DIR/floats.rs:20:9
| |
LL | 0.01f16..=6.5f16 => {} LL | 0.01f16..=6.5f16 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | 6.5f16 => {} LL | 6.5f16 => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:31:9 --> $DIR/floats.rs:31:9
| |
LL | 0.01f32..=6.5f32 => {} LL | 0.01f32..=6.5f32 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | 0.01f32 => {} LL | 0.01f32 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:32:9 --> $DIR/floats.rs:32:9
| |
LL | 0.01f32..=6.5f32 => {} LL | 0.01f32..=6.5f32 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | 0.01f32 => {} LL | 0.01f32 => {}
LL | 0.02f32 => {} LL | 0.02f32 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:33:9 --> $DIR/floats.rs:33:9
| |
LL | 0.01f32..=6.5f32 => {} LL | 0.01f32..=6.5f32 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | 6.5f32 => {} LL | 6.5f32 => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:45:9 --> $DIR/floats.rs:45:9
| |
LL | 0.01f64..=6.5f64 => {} LL | 0.01f64..=6.5f64 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | 0.005f64 => {} LL | 0.005f64 => {}
LL | 0.01f64 => {} LL | 0.01f64 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:46:9 --> $DIR/floats.rs:46:9
| |
LL | 0.01f64..=6.5f64 => {} LL | 0.01f64..=6.5f64 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | 0.02f64 => {} LL | 0.02f64 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:47:9 --> $DIR/floats.rs:47:9
| |
LL | 0.01f64..=6.5f64 => {} LL | 0.01f64..=6.5f64 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | 6.5f64 => {} LL | 6.5f64 => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:49:9 --> $DIR/floats.rs:49:9
| |
LL | 0.01f64..=6.5f64 => {} LL | 0.01f64..=6.5f64 => {}
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | 1.0f64..=4.0f64 => {} LL | 1.0f64..=4.0f64 => {}
| ^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:62:9 --> $DIR/floats.rs:62:9
| |
LL | 0.01f128..=6.5f128 => {} LL | 0.01f128..=6.5f128 => {}
| ------------------ matches all the values already | ------------------ matches all the relevant values
LL | 0.005f128 => {} LL | 0.005f128 => {}
LL | 0.01f128 => {} LL | 0.01f128 => {}
| ^^^^^^^^ unreachable pattern | ^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:63:9 --> $DIR/floats.rs:63:9
| |
LL | 0.01f128..=6.5f128 => {} LL | 0.01f128..=6.5f128 => {}
| ------------------ matches all the values already | ------------------ matches all the relevant values
... ...
LL | 0.02f128 => {} LL | 0.02f128 => {}
| ^^^^^^^^ unreachable pattern | ^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:64:9 --> $DIR/floats.rs:64:9
| |
LL | 0.01f128..=6.5f128 => {} LL | 0.01f128..=6.5f128 => {}
| ------------------ matches all the values already | ------------------ matches all the relevant values
... ...
LL | 6.5f128 => {} LL | 6.5f128 => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/floats.rs:66:9 --> $DIR/floats.rs:66:9
| |
LL | 0.01f128..=6.5f128 => {} LL | 0.01f128..=6.5f128 => {}
| ------------------ matches all the values already | ------------------ matches all the relevant values
... ...
LL | 1.0f128..=4.0f128 => {} LL | 1.0f128..=4.0f128 => {}
| ^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^ no value can reach this
error: aborting due to 15 previous errors error: aborting due to 15 previous errors

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/impl-trait.rs:4:9 --> $DIR/impl-trait.rs:4:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:44:13 --> $DIR/impl-trait.rs:44:13
@ -25,15 +25,15 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:48:13 --> $DIR/impl-trait.rs:48:13
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:58:13 --> $DIR/impl-trait.rs:58:13
@ -41,15 +41,15 @@ error: unreachable pattern
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ | ^^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:62:13 --> $DIR/impl-trait.rs:62:13
| |
LL | None => {} LL | None => {}
| ---- matches all the values already | ---- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:75:9 --> $DIR/impl-trait.rs:75:9
@ -57,7 +57,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:85:9 --> $DIR/impl-trait.rs:85:9
@ -65,7 +65,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| - matches any value | - matches any value
LL | Some((a, b)) => {} LL | Some((a, b)) => {}
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:93:13 --> $DIR/impl-trait.rs:93:13
@ -73,15 +73,15 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:104:9 --> $DIR/impl-trait.rs:104:9
| |
LL | Some((a, b)) => {} LL | Some((a, b)) => {}
| ------------ matches all the values already | ------------ matches all the relevant values
LL | Some((mut x, mut y)) => { LL | Some((mut x, mut y)) => {
| ^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:123:13 --> $DIR/impl-trait.rs:123:13
@ -89,7 +89,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| - matches any value | - matches any value
LL | Rec { n: 0, w: Some(Rec { n: 0, w: _ }) } => {} LL | Rec { n: 0, w: Some(Rec { n: 0, w: _ }) } => {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:137:13 --> $DIR/impl-trait.rs:137:13
@ -97,7 +97,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `SecretelyVoid` is uninhabited = note: matches no values because `SecretelyVoid` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/impl-trait.rs:150:13 --> $DIR/impl-trait.rs:150:13
@ -105,7 +105,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `SecretelyDoubleVoid` is uninhabited = note: matches no values because `SecretelyDoubleVoid` is uninhabited
error[E0004]: non-exhaustive patterns: type `impl Copy` is non-empty error[E0004]: non-exhaustive patterns: type `impl Copy` is non-empty
--> $DIR/impl-trait.rs:22:11 --> $DIR/impl-trait.rs:22:11

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/reachability.rs:18:17 --> $DIR/reachability.rs:18:17
| |
LL | m!(0u8, 42, 42); LL | m!(0u8, 42, 42);
| -- ^^ unreachable pattern | -- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/reachability.rs:3:9 --> $DIR/reachability.rs:3:9
@ -16,129 +16,129 @@ error: unreachable pattern
--> $DIR/reachability.rs:22:22 --> $DIR/reachability.rs:22:22
| |
LL | m!(0u8, 20..=30, 20); LL | m!(0u8, 20..=30, 20);
| ------- ^^ unreachable pattern | ------- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:23:22 --> $DIR/reachability.rs:23:22
| |
LL | m!(0u8, 20..=30, 21); LL | m!(0u8, 20..=30, 21);
| ------- ^^ unreachable pattern | ------- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:24:22 --> $DIR/reachability.rs:24:22
| |
LL | m!(0u8, 20..=30, 25); LL | m!(0u8, 20..=30, 25);
| ------- ^^ unreachable pattern | ------- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:25:22 --> $DIR/reachability.rs:25:22
| |
LL | m!(0u8, 20..=30, 29); LL | m!(0u8, 20..=30, 29);
| ------- ^^ unreachable pattern | ------- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:26:22 --> $DIR/reachability.rs:26:22
| |
LL | m!(0u8, 20..=30, 30); LL | m!(0u8, 20..=30, 30);
| ------- ^^ unreachable pattern | ------- ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:29:21 --> $DIR/reachability.rs:29:21
| |
LL | m!(0u8, 20..30, 20); LL | m!(0u8, 20..30, 20);
| ------ ^^ unreachable pattern | ------ ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:30:21 --> $DIR/reachability.rs:30:21
| |
LL | m!(0u8, 20..30, 21); LL | m!(0u8, 20..30, 21);
| ------ ^^ unreachable pattern | ------ ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:31:21 --> $DIR/reachability.rs:31:21
| |
LL | m!(0u8, 20..30, 25); LL | m!(0u8, 20..30, 25);
| ------ ^^ unreachable pattern | ------ ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:32:21 --> $DIR/reachability.rs:32:21
| |
LL | m!(0u8, 20..30, 29); LL | m!(0u8, 20..30, 29);
| ------ ^^ unreachable pattern | ------ ^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:36:22 --> $DIR/reachability.rs:36:22
| |
LL | m!(0u8, 20..=30, 20..=30); LL | m!(0u8, 20..=30, 20..=30);
| ------- ^^^^^^^ unreachable pattern | ------- ^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:37:22 --> $DIR/reachability.rs:37:22
| |
LL | m!(0u8, 20.. 30, 20.. 30); LL | m!(0u8, 20.. 30, 20.. 30);
| ------- ^^^^^^^ unreachable pattern | ------- ^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:38:22 --> $DIR/reachability.rs:38:22
| |
LL | m!(0u8, 20..=30, 20.. 30); LL | m!(0u8, 20..=30, 20.. 30);
| ------- ^^^^^^^ unreachable pattern | ------- ^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:40:22 --> $DIR/reachability.rs:40:22
| |
LL | m!(0u8, 20..=30, 21..=30); LL | m!(0u8, 20..=30, 21..=30);
| ------- ^^^^^^^ unreachable pattern | ------- ^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:41:22 --> $DIR/reachability.rs:41:22
| |
LL | m!(0u8, 20..=30, 20..=29); LL | m!(0u8, 20..=30, 20..=29);
| ------- ^^^^^^^ unreachable pattern | ------- ^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:43:24 --> $DIR/reachability.rs:43:24
| |
LL | m!('a', 'A'..='z', 'a'..='z'); LL | m!('a', 'A'..='z', 'a'..='z');
| --------- ^^^^^^^^^ unreachable pattern | --------- ^^^^^^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:50:9 --> $DIR/reachability.rs:50:9
| |
LL | 5..=8 => {}, LL | 5..=8 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:50:9 --> $DIR/reachability.rs:50:9
| |
LL | 5 => {}, LL | 5 => {},
@ -156,9 +156,9 @@ error: unreachable pattern
--> $DIR/reachability.rs:56:9 --> $DIR/reachability.rs:56:9
| |
LL | 5..15 => {}, LL | 5..15 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:56:9 --> $DIR/reachability.rs:56:9
| |
LL | 0..10 => {}, LL | 0..10 => {},
@ -172,9 +172,9 @@ error: unreachable pattern
--> $DIR/reachability.rs:63:9 --> $DIR/reachability.rs:63:9
| |
LL | 5..25 => {}, LL | 5..25 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:63:9 --> $DIR/reachability.rs:63:9
| |
LL | 0..10 => {}, LL | 0..10 => {},
@ -190,9 +190,9 @@ error: unreachable pattern
--> $DIR/reachability.rs:71:9 --> $DIR/reachability.rs:71:9
| |
LL | 5..25 => {}, LL | 5..25 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:71:9 --> $DIR/reachability.rs:71:9
| |
LL | 0..10 => {}, LL | 0..10 => {},
@ -210,9 +210,9 @@ error: unreachable pattern
--> $DIR/reachability.rs:77:9 --> $DIR/reachability.rs:77:9
| |
LL | 5..15 => {}, LL | 5..15 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:77:9 --> $DIR/reachability.rs:77:9
| |
LL | 0..10 => {}, LL | 0..10 => {},
@ -228,15 +228,15 @@ error: unreachable pattern
LL | _ => {}, LL | _ => {},
| - matches any value | - matches any value
LL | '\u{D7FF}'..='\u{E000}' => {}, LL | '\u{D7FF}'..='\u{E000}' => {},
| ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:89:9 --> $DIR/reachability.rs:89:9
| |
LL | '\u{D7FF}'..='\u{E000}' => {}, LL | '\u{D7FF}'..='\u{E000}' => {},
| ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/reachability.rs:89:9 --> $DIR/reachability.rs:89:9
| |
LL | '\u{0}'..='\u{D7FF}' => {}, LL | '\u{0}'..='\u{D7FF}' => {},
@ -250,18 +250,18 @@ error: unreachable pattern
--> $DIR/reachability.rs:105:9 --> $DIR/reachability.rs:105:9
| |
LL | &42 => {} LL | &42 => {}
| --- matches all the values already | --- matches all the relevant values
LL | &FOO => {} LL | &FOO => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/reachability.rs:106:9 --> $DIR/reachability.rs:106:9
| |
LL | &42 => {} LL | &42 => {}
| --- matches all the values already | --- matches all the relevant values
LL | &FOO => {} LL | &FOO => {}
LL | BAR => {} LL | BAR => {}
| ^^^ unreachable pattern | ^^^ no value can reach this
error: aborting due to 25 previous errors error: aborting due to 25 previous errors

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-12116.rs:15:9 --> $DIR/issue-12116.rs:15:9
| |
LL | &IntList::Cons(val, box ref next_list) => tail(next_list), LL | &IntList::Cons(val, box ref next_list) => tail(next_list),
| -------------------------------------- matches all the values already | -------------------------------------- matches all the relevant values
LL | &IntList::Cons(val, box IntList::Nil) => IntList::Cons(val, Box::new(IntList::Nil)), LL | &IntList::Cons(val, box IntList::Nil) => IntList::Cons(val, Box::new(IntList::Nil)),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-12116.rs:4:9 --> $DIR/issue-12116.rs:4:9

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-12369.rs:9:9 --> $DIR/issue-12369.rs:9:9
| |
LL | &[10,a, ref rest @ ..] => 10 LL | &[10,a, ref rest @ ..] => 10
| ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/issue-12369.rs:9:9 --> $DIR/issue-12369.rs:9:9
| |
LL | &[a,b,c] => 3, LL | &[a,b,c] => 3,

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-13727.rs:7:5 --> $DIR/issue-13727.rs:7:5
| |
LL | 256 => print!("0b1110\n"), LL | 256 => print!("0b1110\n"),
| --- matches all the values already | --- matches all the relevant values
LL | 512 => print!("0b1111\n"), LL | 512 => print!("0b1111\n"),
| ^^^ unreachable pattern | ^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-13727.rs:2:9 --> $DIR/issue-13727.rs:2:9

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-30240-b.rs:12:9 --> $DIR/issue-30240-b.rs:12:9
| |
LL | "hello" => {} LL | "hello" => {}
| ------- matches all the values already | ------- matches all the relevant values
LL | "hello" => {} LL | "hello" => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-30240-b.rs:1:9 --> $DIR/issue-30240-b.rs:1:9

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | Var3 => (), LL | Var3 => (),
| ---- matches any value | ---- matches any value
LL | Var2 => (), LL | Var2 => (),
| ^^^^ unreachable pattern | ^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-31221.rs:4:9 --> $DIR/issue-31221.rs:4:9
@ -18,15 +18,15 @@ error: unreachable pattern
LL | &Var3 => (), LL | &Var3 => (),
| ----- matches any value | ----- matches any value
LL | &Var2 => (), LL | &Var2 => (),
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/issue-31221.rs:31:9 --> $DIR/issue-31221.rs:31:9
| |
LL | anything => () LL | anything => ()
| ^^^^^^^^ unreachable pattern | ^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/issue-31221.rs:31:9 --> $DIR/issue-31221.rs:31:9
| |
LL | (Var1, b) => (), LL | (Var1, b) => (),

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-57472.rs:15:13 --> $DIR/issue-57472.rs:15:13
| |
LL | Punned { foo: [_], .. } => println!("foo"), LL | Punned { foo: [_], .. } => println!("foo"),
| ----------------------- matches all the values already | ----------------------- matches all the relevant values
LL | Punned { bar: [_], .. } => println!("bar"), LL | Punned { bar: [_], .. } => println!("bar"),
| ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-57472.rs:2:9 --> $DIR/issue-57472.rs:2:9
@ -16,9 +16,9 @@ error: unreachable pattern
--> $DIR/issue-57472.rs:32:17 --> $DIR/issue-57472.rs:32:17
| |
LL | Punned { foo: [_] } => println!("foo"), LL | Punned { foo: [_] } => println!("foo"),
| ------------------- matches all the values already | ------------------- matches all the relevant values
LL | Punned { bar: [_] } => println!("bar"), LL | Punned { bar: [_] } => println!("bar"),
| ^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^ no value can reach this
error: aborting due to 2 previous errors error: aborting due to 2 previous errors

View file

@ -2,10 +2,10 @@ error: unreachable pattern
--> $DIR/match-arm-statics.rs:25:9 --> $DIR/match-arm-statics.rs:25:9
| |
LL | TRUE_TRUE => (), LL | TRUE_TRUE => (),
| --------- matches all the values already | --------- matches all the relevant values
... ...
LL | (true, true) => () LL | (true, true) => ()
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/match-arm-statics.rs:2:9 --> $DIR/match-arm-statics.rs:2:9
@ -17,18 +17,18 @@ error: unreachable pattern
--> $DIR/match-arm-statics.rs:40:9 --> $DIR/match-arm-statics.rs:40:9
| |
LL | Some(Some(EAST)) => (), LL | Some(Some(EAST)) => (),
| ---------------- matches all the values already | ---------------- matches all the relevant values
... ...
LL | Some(Some(East)) => (), LL | Some(Some(East)) => (),
| ^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-arm-statics.rs:60:9 --> $DIR/match-arm-statics.rs:60:9
| |
LL | Foo { bar: Some(EAST), baz: NewBool(false) } => () LL | Foo { bar: Some(EAST), baz: NewBool(false) } => ()
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/match-arm-statics.rs:60:9 --> $DIR/match-arm-statics.rs:60:9
| |
LL | Foo { bar: _, baz: NEW_FALSE } => (), LL | Foo { bar: _, baz: NEW_FALSE } => (),

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:8:9 --> $DIR/match-byte-array-patterns.rs:8:9
| |
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ------- matches all the values already | ------- matches all the relevant values
LL | &[0x41, 0x41, 0x41, 0x41] => {} LL | &[0x41, 0x41, 0x41, 0x41] => {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/match-byte-array-patterns.rs:1:9 --> $DIR/match-byte-array-patterns.rs:1:9
@ -16,57 +16,57 @@ error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:14:9 --> $DIR/match-byte-array-patterns.rs:14:9
| |
LL | &[0x41, 0x41, 0x41, 0x41] => {} LL | &[0x41, 0x41, 0x41, 0x41] => {}
| ------------------------- matches all the values already | ------------------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:20:9 --> $DIR/match-byte-array-patterns.rs:20:9
| |
LL | &[_, 0x41, 0x41, 0x41] => {}, LL | &[_, 0x41, 0x41, 0x41] => {},
| ---------------------- matches all the values already | ---------------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:26:9 --> $DIR/match-byte-array-patterns.rs:26:9
| |
LL | &[0x41, .., 0x41] => {} LL | &[0x41, .., 0x41] => {}
| ----------------- matches all the values already | ----------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:34:9 --> $DIR/match-byte-array-patterns.rs:34:9
| |
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ------- matches all the values already | ------- matches all the relevant values
LL | &[0x41, 0x41, 0x41, 0x41] => {} LL | &[0x41, 0x41, 0x41, 0x41] => {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:40:9 --> $DIR/match-byte-array-patterns.rs:40:9
| |
LL | &[0x41, 0x41, 0x41, 0x41] => {} LL | &[0x41, 0x41, 0x41, 0x41] => {}
| ------------------------- matches all the values already | ------------------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:46:9 --> $DIR/match-byte-array-patterns.rs:46:9
| |
LL | &[_, 0x41, 0x41, 0x41] => {}, LL | &[_, 0x41, 0x41, 0x41] => {},
| ---------------------- matches all the values already | ---------------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-byte-array-patterns.rs:52:9 --> $DIR/match-byte-array-patterns.rs:52:9
| |
LL | &[0x41, .., 0x41] => {} LL | &[0x41, .., 0x41] => {}
| ----------------- matches all the values already | ----------------- matches all the relevant values
LL | b"AAAA" => {}, LL | b"AAAA" => {},
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: aborting due to 8 previous errors error: aborting due to 8 previous errors

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/match-ref-ice.rs:13:9 --> $DIR/match-ref-ice.rs:13:9
| |
LL | [1, ref _madoka, 3] => (), LL | [1, ref _madoka, 3] => (),
| ------------------- matches all the values already | ------------------- matches all the relevant values
LL | [1, 2, 3] => (), LL | [1, 2, 3] => (),
| ^^^^^^^^^ unreachable pattern | ^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/match-ref-ice.rs:1:9 --> $DIR/match-ref-ice.rs:1:9

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/match-vec-fixed.rs:7:9 --> $DIR/match-vec-fixed.rs:7:9
| |
LL | [_, _, _] => {} LL | [_, _, _] => {}
| --------- matches all the values already | --------- matches all the relevant values
LL | [_, _, _] => {} LL | [_, _, _] => {}
| ^^^^^^^^^ unreachable pattern | ^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/match-vec-fixed.rs:1:9 --> $DIR/match-vec-fixed.rs:1:9
@ -16,9 +16,9 @@ error: unreachable pattern
--> $DIR/match-vec-fixed.rs:11:9 --> $DIR/match-vec-fixed.rs:11:9
| |
LL | [_, 1, _] => {} LL | [_, 1, _] => {}
| --------- matches all the values already | --------- matches all the relevant values
LL | [_, 1, _] => {} LL | [_, 1, _] => {}
| ^^^^^^^^^ unreachable pattern | ^^^^^^^^^ no value can reach this
error: aborting due to 2 previous errors error: aborting due to 2 previous errors

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/match-vec-unreachable.rs:8:9 --> $DIR/match-vec-unreachable.rs:8:9
| |
LL | [a, (2, 3), _] => (), LL | [a, (2, 3), _] => (),
| -------------- matches all the values already | -------------- matches all the relevant values
LL | [(1, 2), (2, 3), b] => (), LL | [(1, 2), (2, 3), b] => (),
| ^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/match-vec-unreachable.rs:1:9 --> $DIR/match-vec-unreachable.rs:1:9
@ -16,17 +16,17 @@ error: unreachable pattern
--> $DIR/match-vec-unreachable.rs:18:9 --> $DIR/match-vec-unreachable.rs:18:9
| |
LL | [ref a, _, _, ..] => { println!("{}", a); } LL | [ref a, _, _, ..] => { println!("{}", a); }
| ----------------- matches all the values already | ----------------- matches all the relevant values
LL | [_, _, _, _, _] => { } LL | [_, _, _, _, _] => { }
| ^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/match-vec-unreachable.rs:26:9 --> $DIR/match-vec-unreachable.rs:26:9
| |
LL | ['a', 'b', 'c', ref _tail @ ..] => {} LL | ['a', 'b', 'c', ref _tail @ ..] => {}
| ------------------------------- matches all the values already | ------------------------------- matches all the relevant values
LL | ['a', 'b', 'c'] => {} LL | ['a', 'b', 'c'] => {}
| ^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^ no value can reach this
error: aborting due to 3 previous errors error: aborting due to 3 previous errors

View file

@ -2,10 +2,10 @@ error: unreachable pattern
--> $DIR/slice-pattern-const-2.rs:9:9 --> $DIR/slice-pattern-const-2.rs:9:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [0x00, 0x00, 0x00, 0x00] => (), LL | [0x00, 0x00, 0x00, 0x00] => (),
LL | [4, 5, 6, 7] => (), LL | [4, 5, 6, 7] => (),
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/slice-pattern-const-2.rs:1:9 --> $DIR/slice-pattern-const-2.rs:1:9
@ -17,25 +17,25 @@ error: unreachable pattern
--> $DIR/slice-pattern-const-2.rs:15:9 --> $DIR/slice-pattern-const-2.rs:15:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [4, 5, 6, 7] => (), LL | [4, 5, 6, 7] => (),
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const-2.rs:21:9 --> $DIR/slice-pattern-const-2.rs:21:9
| |
LL | [4, 5, 6, 7] => (), LL | [4, 5, 6, 7] => (),
| ------------ matches all the values already | ------------ matches all the relevant values
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const-2.rs:28:9 --> $DIR/slice-pattern-const-2.rs:28:9
| |
LL | [4] => (), LL | [4] => (),
| --- matches all the values already | --- matches all the relevant values
LL | FOO => (), LL | FOO => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: aborting due to 4 previous errors error: aborting due to 4 previous errors

View file

@ -2,10 +2,10 @@ error: unreachable pattern
--> $DIR/slice-pattern-const-3.rs:9:9 --> $DIR/slice-pattern-const-3.rs:9:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | ["0x00", "0x00", "0x00", "0x00"] => (), LL | ["0x00", "0x00", "0x00", "0x00"] => (),
LL | ["4", "5", "6", "7"] => (), LL | ["4", "5", "6", "7"] => (),
| ^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/slice-pattern-const-3.rs:1:9 --> $DIR/slice-pattern-const-3.rs:1:9
@ -17,25 +17,25 @@ error: unreachable pattern
--> $DIR/slice-pattern-const-3.rs:15:9 --> $DIR/slice-pattern-const-3.rs:15:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | ["4", "5", "6", "7"] => (), LL | ["4", "5", "6", "7"] => (),
| ^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const-3.rs:21:9 --> $DIR/slice-pattern-const-3.rs:21:9
| |
LL | ["4", "5", "6", "7"] => (), LL | ["4", "5", "6", "7"] => (),
| -------------------- matches all the values already | -------------------- matches all the relevant values
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const-3.rs:28:9 --> $DIR/slice-pattern-const-3.rs:28:9
| |
LL | ["boo"] => (), LL | ["boo"] => (),
| ------- matches all the values already | ------- matches all the relevant values
LL | FOO => (), LL | FOO => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: aborting due to 4 previous errors error: aborting due to 4 previous errors

View file

@ -2,10 +2,10 @@ error: unreachable pattern
--> $DIR/slice-pattern-const.rs:9:9 --> $DIR/slice-pattern-const.rs:9:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [0x00, 0x00, 0x00, 0x00] => (), LL | [0x00, 0x00, 0x00, 0x00] => (),
LL | [84, 69, 83, 84] => (), LL | [84, 69, 83, 84] => (),
| ^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/slice-pattern-const.rs:1:9 --> $DIR/slice-pattern-const.rs:1:9
@ -17,67 +17,67 @@ error: unreachable pattern
--> $DIR/slice-pattern-const.rs:15:9 --> $DIR/slice-pattern-const.rs:15:9
| |
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [84, 69, 83, 84] => (), LL | [84, 69, 83, 84] => (),
| ^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:21:9 --> $DIR/slice-pattern-const.rs:21:9
| |
LL | [84, 69, 83, 84] => (), LL | [84, 69, 83, 84] => (),
| ---------------- matches all the values already | ---------------- matches all the relevant values
LL | MAGIC_TEST => (), LL | MAGIC_TEST => (),
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:28:9 --> $DIR/slice-pattern-const.rs:28:9
| |
LL | [4] => (), LL | [4] => (),
| --- matches all the values already | --- matches all the relevant values
LL | FOO => (), LL | FOO => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:35:9 --> $DIR/slice-pattern-const.rs:35:9
| |
LL | [4] => (), LL | [4] => (),
| --- matches all the values already | --- matches all the relevant values
LL | BAR => (), LL | BAR => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:43:9 --> $DIR/slice-pattern-const.rs:43:9
| |
LL | [] => (), LL | [] => (),
| -- matches all the values already | -- matches all the relevant values
LL | BOO => (), LL | BOO => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:44:9 --> $DIR/slice-pattern-const.rs:44:9
| |
LL | [] => (), LL | [] => (),
| -- matches all the values already | -- matches all the relevant values
LL | BOO => (), LL | BOO => (),
LL | b"" => (), LL | b"" => (),
| ^^^ unreachable pattern | ^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:45:9 --> $DIR/slice-pattern-const.rs:45:9
| |
LL | [] => (), LL | [] => (),
| -- matches all the values already | -- matches all the relevant values
... ...
LL | _ => (), LL | _ => (),
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-pattern-const.rs:51:9 --> $DIR/slice-pattern-const.rs:51:9
| |
LL | CONST1 => {} LL | CONST1 => {}
| ------ matches all the values already | ------ matches all the relevant values
LL | [true] => {} LL | [true] => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: aborting due to 9 previous errors error: aborting due to 9 previous errors

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:8:9 --> $DIR/slice-patterns-reachability.rs:8:9
| |
LL | [true, ..] => {} LL | [true, ..] => {}
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [true, ..] => {} LL | [true, ..] => {}
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/slice-patterns-reachability.rs:1:9 --> $DIR/slice-patterns-reachability.rs:1:9
@ -16,44 +16,44 @@ error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:9:9 --> $DIR/slice-patterns-reachability.rs:9:9
| |
LL | [true, ..] => {} LL | [true, ..] => {}
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [true, ..] => {} LL | [true, ..] => {}
LL | [true] => {} LL | [true] => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:14:9 --> $DIR/slice-patterns-reachability.rs:14:9
| |
LL | [.., true] => {} LL | [.., true] => {}
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [.., true] => {} LL | [.., true] => {}
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:15:9 --> $DIR/slice-patterns-reachability.rs:15:9
| |
LL | [.., true] => {} LL | [.., true] => {}
| ---------- matches all the values already | ---------- matches all the relevant values
LL | [.., true] => {} LL | [.., true] => {}
LL | [true] => {} LL | [true] => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:20:9 --> $DIR/slice-patterns-reachability.rs:20:9
| |
LL | [false, .., true] => {} LL | [false, .., true] => {}
| ----------------- matches all the values already | ----------------- matches all the relevant values
LL | [false, .., true] => {} LL | [false, .., true] => {}
| ^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/slice-patterns-reachability.rs:21:9 --> $DIR/slice-patterns-reachability.rs:21:9
| |
LL | [false, .., true] => {} LL | [false, .., true] => {}
| ----------------- matches all the values already | ----------------- matches all the relevant values
LL | [false, .., true] => {} LL | [false, .., true] => {}
LL | [false, true] => {} LL | [false, true] => {}
| ^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^ no value can reach this
error: aborting due to 6 previous errors error: aborting due to 6 previous errors

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | Foo { x: _x, y: _y } => (), LL | Foo { x: _x, y: _y } => (),
| -------------------- matches any value | -------------------- matches any value
LL | Foo { .. } => () LL | Foo { .. } => ()
| ^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/struct-pattern-match-useless.rs:1:9 --> $DIR/struct-pattern-match-useless.rs:1:9

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/top-level-alternation.rs:4:23 --> $DIR/top-level-alternation.rs:4:23
| |
LL | while let 0..=2 | 1 = 0 {} LL | while let 0..=2 | 1 = 0 {}
| ----- ^ unreachable pattern | ----- ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/top-level-alternation.rs:1:9 --> $DIR/top-level-alternation.rs:1:9
@ -16,66 +16,66 @@ error: unreachable pattern
--> $DIR/top-level-alternation.rs:5:20 --> $DIR/top-level-alternation.rs:5:20
| |
LL | if let 0..=2 | 1 = 0 {} LL | if let 0..=2 | 1 = 0 {}
| ----- ^ unreachable pattern | ----- ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:9:15 --> $DIR/top-level-alternation.rs:9:15
| |
LL | 0 LL | 0
| - matches all the values already | - matches all the relevant values
LL | | 0 => {} LL | | 0 => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:14:15 --> $DIR/top-level-alternation.rs:14:15
| |
LL | Some(0) LL | Some(0)
| ------- matches all the values already | ------- matches all the relevant values
LL | | Some(0) => {} LL | | Some(0) => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:19:9 --> $DIR/top-level-alternation.rs:19:9
| |
LL | (0, _) | (_, 0) => {} LL | (0, _) | (_, 0) => {}
| --------------- matches all the values already | --------------- matches all the relevant values
LL | (0, 0) => {} LL | (0, 0) => {}
| ^^^^^^ unreachable pattern | ^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:39:9 --> $DIR/top-level-alternation.rs:39:9
| |
LL | None | Some(_) => {} LL | None | Some(_) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
LL | _ => {} LL | _ => {}
| ^ unreachable pattern | ^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:43:9 --> $DIR/top-level-alternation.rs:43:9
| |
LL | None | Some(_) => {} LL | None | Some(_) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
LL | Some(_) => {} LL | Some(_) => {}
| ^^^^^^^ unreachable pattern | ^^^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:44:9 --> $DIR/top-level-alternation.rs:44:9
| |
LL | None | Some(_) => {} LL | None | Some(_) => {}
| -------------- matches all the values already | -------------- matches all the relevant values
LL | Some(_) => {} LL | Some(_) => {}
LL | None => {} LL | None => {}
| ^^^^ unreachable pattern | ^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:49:9 --> $DIR/top-level-alternation.rs:49:9
| |
LL | None | Some(_) => {} LL | None | Some(_) => {}
| ^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^ no value can reach this
| |
note: these patterns collectively make the last one unreachable note: multiple earlier patterns match some of the same values
--> $DIR/top-level-alternation.rs:49:9 --> $DIR/top-level-alternation.rs:49:9
| |
LL | Some(_) => {} LL | Some(_) => {}
@ -89,17 +89,17 @@ error: unreachable pattern
--> $DIR/top-level-alternation.rs:53:9 --> $DIR/top-level-alternation.rs:53:9
| |
LL | 1 | 2 => {}, LL | 1 | 2 => {},
| ----- matches all the values already | ----- matches all the relevant values
LL | 1..=2 => {}, LL | 1..=2 => {},
| ^^^^^ unreachable pattern | ^^^^^ no value can reach this
error: unreachable pattern error: unreachable pattern
--> $DIR/top-level-alternation.rs:56:14 --> $DIR/top-level-alternation.rs:56:14
| |
LL | let (0 | 0) = 0 else { return }; LL | let (0 | 0) = 0 else { return };
| - ^ unreachable pattern | - ^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
error: aborting due to 11 previous errors error: aborting due to 11 previous errors

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/unreachable-arm.rs:11:9 --> $DIR/unreachable-arm.rs:11:9
| |
LL | Foo::B(_) | Foo::A(box _, 1) => { } LL | Foo::B(_) | Foo::A(box _, 1) => { }
| ---------------------------- matches all the values already | ---------------------------- matches all the relevant values
LL | Foo::A(_, 1) => { } LL | Foo::A(_, 1) => { }
| ^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/unreachable-arm.rs:4:9 --> $DIR/unreachable-arm.rs:4:9

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | for _ in unimplemented!() as Void {} LL | for _ in unimplemented!() as Void {}
| ^ | ^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/unreachable-loop-patterns.rs:3:9 --> $DIR/unreachable-loop-patterns.rs:3:9
| |

View file

@ -19,7 +19,7 @@ warning: unreachable pattern
LL | let y = (match x { Ok(n) => Ok(n as u32), Err(e) => Err(e) })?; LL | let y = (match x { Ok(n) => Ok(n as u32), Err(e) => Err(e) })?;
| ^^^^^ | ^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/unreachable-try-pattern.rs:4:9 --> $DIR/unreachable-try-pattern.rs:4:9
| |
@ -32,7 +32,7 @@ warning: unreachable pattern
LL | let y = (match x { Ok(n) => Ok(n), Err(e) => Err(e) })?; LL | let y = (match x { Ok(n) => Ok(n), Err(e) => Err(e) })?;
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
warning: 3 warnings emitted warning: 3 warnings emitted

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | Err(!), LL | Err(!),
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/unreachable.rs:4:9 --> $DIR/unreachable.rs:4:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | let (Ok(_x) | Err(!)) = res_void; LL | let (Ok(_x) | Err(!)) = res_void;
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/unreachable.rs:19:12 --> $DIR/unreachable.rs:19:12
@ -25,7 +25,7 @@ error: unreachable pattern
LL | if let Err(!) = res_void {} LL | if let Err(!) = res_void {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/unreachable.rs:21:24 --> $DIR/unreachable.rs:21:24
@ -33,7 +33,7 @@ error: unreachable pattern
LL | if let (Ok(true) | Err(!)) = res_void {} LL | if let (Ok(true) | Err(!)) = res_void {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/unreachable.rs:23:23 --> $DIR/unreachable.rs:23:23
@ -41,7 +41,7 @@ error: unreachable pattern
LL | for (Ok(mut _x) | Err(!)) in [res_void] {} LL | for (Ok(mut _x) | Err(!)) in [res_void] {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/unreachable.rs:27:18 --> $DIR/unreachable.rs:27:18
@ -49,7 +49,7 @@ error: unreachable pattern
LL | fn foo((Ok(_x) | Err(!)): Result<bool, Void>) {} LL | fn foo((Ok(_x) | Err(!)): Result<bool, Void>) {}
| ^^^^^^ | ^^^^^^
| |
= note: this pattern matches no values because `Void` is uninhabited = note: matches no values because `Void` is uninhabited
error: aborting due to 6 previous errors error: aborting due to 6 previous errors

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | _ => {} LL | _ => {}
| ^ | ^
| |
= note: this pattern matches no values because `EmptyNonExhaustiveEnum` is uninhabited = note: matches no values because `EmptyNonExhaustiveEnum` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/enum_same_crate_empty_match.rs:1:9 --> $DIR/enum_same_crate_empty_match.rs:1:9
| |

View file

@ -2,9 +2,9 @@ error: unreachable pattern
--> $DIR/issue-65157-repeated-match-arm.rs:15:9 --> $DIR/issue-65157-repeated-match-arm.rs:15:9
| |
LL | PartiallyInhabitedVariants::Struct { .. } => {}, LL | PartiallyInhabitedVariants::Struct { .. } => {},
| ----------------------------------------- matches all the values already | ----------------------------------------- matches all the relevant values
LL | PartiallyInhabitedVariants::Struct { .. } => {}, LL | PartiallyInhabitedVariants::Struct { .. } => {},
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/issue-65157-repeated-match-arm.rs:2:9 --> $DIR/issue-65157-repeated-match-arm.rs:2:9

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | Some(_x) => (), LL | Some(_x) => (),
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `UninhabitedEnum` is uninhabited = note: matches no values because `UninhabitedEnum` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/patterns_same_crate.rs:1:9 --> $DIR/patterns_same_crate.rs:1:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | Some(_x) => (), LL | Some(_x) => (),
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `UninhabitedVariants` is uninhabited = note: matches no values because `UninhabitedVariants` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/patterns_same_crate.rs:60:15 --> $DIR/patterns_same_crate.rs:60:15
@ -25,7 +25,7 @@ error: unreachable pattern
LL | while let PartiallyInhabitedVariants::Struct { x } = partially_inhabited_variant() { LL | while let PartiallyInhabitedVariants::Struct { x } = partially_inhabited_variant() {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| |
= note: this pattern matches no values because `!` is uninhabited = note: matches no values because `!` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/patterns_same_crate.rs:64:15 --> $DIR/patterns_same_crate.rs:64:15
@ -33,7 +33,7 @@ error: unreachable pattern
LL | while let Some(_x) = uninhabited_struct() { LL | while let Some(_x) = uninhabited_struct() {
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `UninhabitedStruct` is uninhabited = note: matches no values because `UninhabitedStruct` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/patterns_same_crate.rs:67:15 --> $DIR/patterns_same_crate.rs:67:15
@ -41,7 +41,7 @@ error: unreachable pattern
LL | while let Some(_x) = uninhabited_tuple_struct() { LL | while let Some(_x) = uninhabited_tuple_struct() {
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `UninhabitedTupleStruct` is uninhabited = note: matches no values because `UninhabitedTupleStruct` is uninhabited
error: aborting due to 5 previous errors error: aborting due to 5 previous errors

View file

@ -16,9 +16,9 @@ error: unreachable pattern
--> $DIR/warns.rs:15:25 --> $DIR/warns.rs:15:25
| |
LL | x if let None | None = x => {} LL | x if let None | None = x => {}
| ---- ^^^^ unreachable pattern | ---- ^^^^ no value can reach this
| | | |
| matches all the values already | matches all the relevant values
| |
note: the lint level is defined here note: the lint level is defined here
--> $DIR/warns.rs:12:8 --> $DIR/warns.rs:12:8

View file

@ -4,7 +4,7 @@ error: unreachable pattern
LL | Ok(box _) => (), LL | Ok(box _) => (),
| ^^^^^^^^^ | ^^^^^^^^^
| |
= note: this pattern matches no values because `NotSoSecretlyEmpty` is uninhabited = note: matches no values because `NotSoSecretlyEmpty` is uninhabited
note: the lint level is defined here note: the lint level is defined here
--> $DIR/uninhabited-patterns.rs:3:9 --> $DIR/uninhabited-patterns.rs:3:9
| |
@ -17,7 +17,7 @@ error: unreachable pattern
LL | Err(Ok(_y)) => (), LL | Err(Ok(_y)) => (),
| ^^^^^^^^^^^ | ^^^^^^^^^^^
| |
= note: this pattern matches no values because `NotSoSecretlyEmpty` is uninhabited = note: matches no values because `NotSoSecretlyEmpty` is uninhabited
error: unreachable pattern error: unreachable pattern
--> $DIR/uninhabited-patterns.rs:41:15 --> $DIR/uninhabited-patterns.rs:41:15
@ -25,7 +25,7 @@ error: unreachable pattern
LL | while let Some(_y) = foo() { LL | while let Some(_y) = foo() {
| ^^^^^^^^ | ^^^^^^^^
| |
= note: this pattern matches no values because `NotSoSecretlyEmpty` is uninhabited = note: matches no values because `NotSoSecretlyEmpty` is uninhabited
error: aborting due to 3 previous errors error: aborting due to 3 previous errors