```rust #![feature(or_patterns)] enum F { A, B, } fn main() { let a = F::A; let b = F::B; match (a, b) { (F::A, F::A) => (), (F::B | F::A, F::B | F::A) => (), } } ``` Results in the following incorrect warning: ``` warning: unreachable pattern --> src/main.rs:13:30 | 13 | (F::B | F::A, F::B | F::A) => (), | ^^^^ | = note: `#[warn(unreachable_patterns)]` on by default warning: 1 warning emitted ``` Removing `F::A` causes a non-exhaustive patterns error as expected. [playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=c4e3fbb48fc2d34cd43bc0896ce01940)
Activity
Fix rust-lang#71977
Rollup merge of rust-lang#73973 - Nadrieril:fix-71977, r=matthewjasper