diff options
| author | Nadrieril <nadrieril+git@gmail.com> | 2024-01-18 14:59:48 +0100 |
|---|---|---|
| committer | Nadrieril <nadrieril+git@gmail.com> | 2024-01-18 17:29:54 +0100 |
| commit | 0a9bb9722907cbbd75a643fad1af3278517805fc (patch) | |
| tree | 5c590cd86f88113c66fe62d6a350645cd7075fd3 /tests/ui/or-patterns | |
| parent | 753680afe833ada2ffe4723519d127dc2d256e78 (diff) | |
| download | rust-0a9bb9722907cbbd75a643fad1af3278517805fc.tar.gz rust-0a9bb9722907cbbd75a643fad1af3278517805fc.zip | |
Consistently warn unreachable subpatterns
Diffstat (limited to 'tests/ui/or-patterns')
| -rw-r--r-- | tests/ui/or-patterns/exhaustiveness-unreachable-pattern.rs | 2 | ||||
| -rw-r--r-- | tests/ui/or-patterns/exhaustiveness-unreachable-pattern.stderr | 20 |
2 files changed, 18 insertions, 4 deletions
diff --git a/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.rs b/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.rs index 324ba54e0e7..1ad335bf394 100644 --- a/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.rs +++ b/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.rs @@ -162,12 +162,14 @@ fn main() { } fn unreachable_in_param((_ | (_, _)): (bool, bool)) {} +//~^ ERROR unreachable fn unreachable_in_binding() { let bool_pair = (true, true); let bool_option = Some(true); let (_ | (_, _)) = bool_pair; + //~^ ERROR unreachable for (_ | (_, _)) in [bool_pair] {} //~^ ERROR unreachable diff --git a/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.stderr b/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.stderr index d47645a4689..336530d1b32 100644 --- a/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.stderr +++ b/tests/ui/or-patterns/exhaustiveness-unreachable-pattern.stderr @@ -185,28 +185,40 @@ LL | | (y, x) => {} | ^^^^^^ error: unreachable pattern + --> $DIR/exhaustiveness-unreachable-pattern.rs:164:30 + | +LL | fn unreachable_in_param((_ | (_, _)): (bool, bool)) {} + | ^^^^^^ + +error: unreachable pattern --> $DIR/exhaustiveness-unreachable-pattern.rs:171:14 | +LL | let (_ | (_, _)) = bool_pair; + | ^^^^^^ + +error: unreachable pattern + --> $DIR/exhaustiveness-unreachable-pattern.rs:173:14 + | LL | for (_ | (_, _)) in [bool_pair] {} | ^^^^^^ error: unreachable pattern - --> $DIR/exhaustiveness-unreachable-pattern.rs:174:20 + --> $DIR/exhaustiveness-unreachable-pattern.rs:176:20 | LL | let (Some(_) | Some(true)) = bool_option else { return }; | ^^^^^^^^^^ error: unreachable pattern - --> $DIR/exhaustiveness-unreachable-pattern.rs:176:22 + --> $DIR/exhaustiveness-unreachable-pattern.rs:178:22 | LL | if let Some(_) | Some(true) = bool_option {} | ^^^^^^^^^^ error: unreachable pattern - --> $DIR/exhaustiveness-unreachable-pattern.rs:178:25 + --> $DIR/exhaustiveness-unreachable-pattern.rs:180:25 | LL | while let Some(_) | Some(true) = bool_option {} | ^^^^^^^^^^ -error: aborting due to 33 previous errors +error: aborting due to 35 previous errors |
