Add some more compound exhaustiveness tests

This commit is contained in:
varkor 2018-08-14 03:02:31 +01:00
parent 9e9e023354
commit 527cccb7a7
2 changed files with 20 additions and 1 deletions

View File

@ -138,4 +138,17 @@ fn main() {
(1, _) => {} (1, _) => {}
(_, None) => {} (_, None) => {}
} }
match (0u8, true) { //~ ERROR non-exhaustive patterns
(0..=125, false) => {}
(128..=255, false) => {}
(0..=255, true) => {}
}
match (0u8, true) {
(0..=125, false) => {}
(128..=255, false) => {}
(0..=255, true) => {}
(125..128, false) => {}
}
} }

View File

@ -58,6 +58,12 @@ error[E0004]: non-exhaustive patterns: `(0u8, Some(_))` and `(2u8..=255u8, Some(
LL | match (0u8, Some(())) { //~ ERROR non-exhaustive patterns LL | match (0u8, Some(())) { //~ ERROR non-exhaustive patterns
| ^^^^^^^^^^^^^^^ patterns `(0u8, Some(_))` and `(2u8..=255u8, Some(_))` not covered | ^^^^^^^^^^^^^^^ patterns `(0u8, Some(_))` and `(2u8..=255u8, Some(_))` not covered
error: aborting due to 9 previous errors error[E0004]: non-exhaustive patterns: `(126u8..=127u8, false)` not covered
--> $DIR/exhaustive_integer_patterns.rs:142:11
|
LL | match (0u8, true) { //~ ERROR non-exhaustive patterns
| ^^^^^^^^^^^ pattern `(126u8..=127u8, false)` not covered
error: aborting due to 10 previous errors
For more information about this error, try `rustc --explain E0004`. For more information about this error, try `rustc --explain E0004`.