| #![allow(unused)] |
| #![warn(clippy::needless_bool_assign)] |
| |
| fn random() -> bool { |
| true |
| } |
| |
| fn main() { |
| struct Data { |
| field: bool, |
| }; |
| let mut a = Data { field: false }; |
| a.field = random() && random(); |
| //~^^^^^ needless_bool_assign |
| a.field = !(random() && random()); |
| //~^^^^^ needless_bool_assign |
| // Do not lint… |
| if random() { |
| a.field = false; |
| } else { |
| // …to avoid losing this comment |
| a.field = true |
| } |
| // This one also triggers lint `clippy::if_same_then_else` |
| // which does not suggest a rewrite. |
| random(); a.field = true; |
| //~^^^^^ if_same_then_else |
| //~| needless_bool_assign |
| let mut b = false; |
| if random() { |
| a.field = false; |
| } else { |
| b = true; |
| } |
| } |