summaryrefslogtreecommitdiffstats
path: root/src/test/ui/pattern/usefulness/slice-pattern-const-2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/pattern/usefulness/slice-pattern-const-2.rs')
-rw-r--r--src/test/ui/pattern/usefulness/slice-pattern-const-2.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/test/ui/pattern/usefulness/slice-pattern-const-2.rs b/src/test/ui/pattern/usefulness/slice-pattern-const-2.rs
new file mode 100644
index 000000000..4bf8d0fd2
--- /dev/null
+++ b/src/test/ui/pattern/usefulness/slice-pattern-const-2.rs
@@ -0,0 +1,31 @@
+#![deny(unreachable_patterns)]
+
+fn main() {
+ let s = &[0x00; 4][..]; //Slice of any value
+ const MAGIC_TEST: &[u32] = &[4, 5, 6, 7]; //Const slice to pattern match with
+ match s {
+ MAGIC_TEST => (),
+ [0x00, 0x00, 0x00, 0x00] => (),
+ [4, 5, 6, 7] => (), //~ ERROR unreachable pattern
+ _ => (),
+ }
+ match s {
+ [0x00, 0x00, 0x00, 0x00] => (),
+ MAGIC_TEST => (),
+ [4, 5, 6, 7] => (), //~ ERROR unreachable pattern
+ _ => (),
+ }
+ match s {
+ [0x00, 0x00, 0x00, 0x00] => (),
+ [4, 5, 6, 7] => (),
+ MAGIC_TEST => (), //~ ERROR unreachable pattern
+ _ => (),
+ }
+ const FOO: [u32; 1] = [4];
+ match [99] {
+ [0x00] => (),
+ [4] => (),
+ FOO => (), //~ ERROR unreachable pattern
+ _ => (),
+ }
+}