]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/tests/ui/overly_complex_bool_expr.rs
Rollup merge of #100253 - obeis:issue-100197, r=cjgillot
[rust.git] / src / tools / clippy / tests / ui / overly_complex_bool_expr.rs
1 #![feature(lint_reasons)]
2 #![allow(unused, clippy::diverging_sub_expression)]
3 #![warn(clippy::overly_complex_bool_expr)]
4
5 fn main() {
6     let a: bool = unimplemented!();
7     let b: bool = unimplemented!();
8     let c: bool = unimplemented!();
9     let d: bool = unimplemented!();
10     let e: bool = unimplemented!();
11     let _ = a && b || a;
12     let _ = !(a && b);
13     let _ = false && a;
14     // don't lint on cfgs
15     let _ = cfg!(you_shall_not_not_pass) && a;
16     let _ = a || !b || !c || !d || !e;
17     let _ = !(a && b || c);
18 }
19
20 fn equality_stuff() {
21     let a: i32 = unimplemented!();
22     let b: i32 = unimplemented!();
23     let _ = a == b && a != b;
24     let _ = a < b && a >= b;
25     let _ = a > b && a <= b;
26     let _ = a > b && a == b;
27 }
28
29 fn check_expect() {
30     let a: i32 = unimplemented!();
31     let b: i32 = unimplemented!();
32     #[expect(clippy::overly_complex_bool_expr)]
33     let _ = a < b && a >= b;
34 }