error[E0004]: non-exhaustive patterns: `A(false)`, `B(false)` and `C(false)` not covered --> $DIR/issue-56379.rs:8:11 | LL | match Foo::A(true) { | ^^^^^^^^^^^^ patterns `A(false)`, `B(false)` and `C(false)` not covered | note: `Foo` defined here --> $DIR/issue-56379.rs:2:5 | LL | enum Foo { | --- LL | A(bool), | ^ not covered LL | B(bool), | ^ not covered LL | C(bool), | ^ not covered = note: the matched value is of type `Foo` help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern, a match arm with multiple or-patterns as shown, or multiple match arms | LL ~ Foo::C(true) => {} LL + A(false) | B(false) | C(false) => todo!() | error: aborting due to previous error For more information about this error, try `rustc --explain E0004`.