| //@ revisions: normal exhaustive_patterns | |
| #![cfg_attr(exhaustive_patterns, feature(exhaustive_patterns))] | |
| #![feature(never_type)] | |
| #![deny(unreachable_patterns)] | |
| fn main() {} | |
| fn foo(nevers: &[!]) { | |
| match nevers { | |
| //[normal]~^ ERROR non-exhaustive patterns: `&[_, ..]` not covered | |
| &[] => (), | |
| }; | |
| match nevers { | |
| &[] => (), | |
| &[_] => (), | |
| &[_, _, ..] => (), | |
| }; | |
| match nevers { | |
| //[exhaustive_patterns]~^ ERROR non-exhaustive patterns: `&[]` not covered | |
| //[normal]~^^ ERROR non-exhaustive patterns: `&[]` and `&[_, _, ..]` not covered | |
| &[_] => (), | |
| }; | |
| } |