]>
Commit | Line | Data |
---|---|---|
781aab86 | 1 | //@no-rustfix: overlapping suggestions |
f20569fa XL |
2 | #![deny(clippy::match_bool)] |
3 | ||
4 | fn match_bool() { | |
5 | let test: bool = true; | |
6 | ||
7 | match test { | |
781aab86 | 8 | //~^ ERROR: you seem to be trying to match on a boolean expression |
f20569fa XL |
9 | true => 0, |
10 | false => 42, | |
11 | }; | |
12 | ||
13 | let option = 1; | |
14 | match option == 1 { | |
781aab86 | 15 | //~^ ERROR: you seem to be trying to match on a boolean expression |
f20569fa XL |
16 | true => 1, |
17 | false => 0, | |
18 | }; | |
19 | ||
20 | match test { | |
781aab86 | 21 | //~^ ERROR: you seem to be trying to match on a boolean expression |
f20569fa XL |
22 | true => (), |
23 | false => { | |
24 | println!("Noooo!"); | |
25 | }, | |
26 | }; | |
27 | ||
28 | match test { | |
781aab86 | 29 | //~^ ERROR: you seem to be trying to match on a boolean expression |
f20569fa XL |
30 | false => { |
31 | println!("Noooo!"); | |
32 | }, | |
33 | _ => (), | |
34 | }; | |
35 | ||
36 | match test && test { | |
781aab86 FG |
37 | //~^ ERROR: this boolean expression can be simplified |
38 | //~| NOTE: `-D clippy::nonminimal-bool` implied by `-D warnings` | |
39 | //~| ERROR: you seem to be trying to match on a boolean expression | |
40 | //~| ERROR: equal expressions as operands to `&&` | |
41 | //~| NOTE: `#[deny(clippy::eq_op)]` on by default | |
f20569fa XL |
42 | false => { |
43 | println!("Noooo!"); | |
44 | }, | |
45 | _ => (), | |
46 | }; | |
47 | ||
48 | match test { | |
781aab86 | 49 | //~^ ERROR: you seem to be trying to match on a boolean expression |
f20569fa XL |
50 | false => { |
51 | println!("Noooo!"); | |
52 | }, | |
53 | true => { | |
54 | println!("Yes!"); | |
55 | }, | |
56 | }; | |
57 | ||
58 | // Not linted | |
59 | match option { | |
60 | 1..=10 => 1, | |
61 | 11..=20 => 2, | |
62 | _ => 3, | |
63 | }; | |
5e7ed085 FG |
64 | |
65 | // Don't lint | |
66 | let _ = match test { | |
67 | #[cfg(feature = "foo")] | |
68 | true if option == 5 => 10, | |
69 | true => 0, | |
70 | false => 1, | |
71 | }; | |
f20569fa XL |
72 | } |
73 | ||
74 | fn main() {} |