From: varkor Date: Tue, 14 Aug 2018 02:02:31 +0000 (+0100) Subject: Add some more compound exhaustiveness tests X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=527cccb7a7a0213880eb97bd01ff1b9f3c834d5b;p=rust.git Add some more compound exhaustiveness tests --- diff --git a/src/test/ui/exhaustive_integer_patterns.rs b/src/test/ui/exhaustive_integer_patterns.rs index c267c4ef28c..0f8168cdd04 100644 --- a/src/test/ui/exhaustive_integer_patterns.rs +++ b/src/test/ui/exhaustive_integer_patterns.rs @@ -138,4 +138,17 @@ fn main() { (1, _) => {} (_, 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) => {} + } } diff --git a/src/test/ui/exhaustive_integer_patterns.stderr b/src/test/ui/exhaustive_integer_patterns.stderr index 6fabbebf487..2222283247b 100644 --- a/src/test/ui/exhaustive_integer_patterns.stderr +++ b/src/test/ui/exhaustive_integer_patterns.stderr @@ -58,6 +58,12 @@ error[E0004]: non-exhaustive patterns: `(0u8, Some(_))` and `(2u8..=255u8, Some( LL | match (0u8, Some(())) { //~ ERROR non-exhaustive patterns | ^^^^^^^^^^^^^^^ 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`.