From ebf20954eefb949c0866d5ba6e1fb1cb357de99c Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 28 Feb 2024 12:47:45 +0100 Subject: [PATCH 1/2] Fix invalid condition in `nonminimal_bool` lint --- clippy_lints/src/booleans.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clippy_lints/src/booleans.rs b/clippy_lints/src/booleans.rs index 0d66f2d644d..614ddc41b15 100644 --- a/clippy_lints/src/booleans.rs +++ b/clippy_lints/src/booleans.rs @@ -148,8 +148,8 @@ fn check_inverted_bool_in_condition( right: &Expr<'_>, ) { if expr_span.from_expansion() - && (!cx.typeck_results().node_types()[left.hir_id].is_bool() - || !cx.typeck_results().node_types()[right.hir_id].is_bool()) + || !cx.typeck_results().node_types()[left.hir_id].is_bool() + || !cx.typeck_results().node_types()[right.hir_id].is_bool() { return; } From 8473716f6e79310d67126c94e673597592ee39e1 Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 28 Feb 2024 12:48:00 +0100 Subject: [PATCH 2/2] Add ui regression test for #12371 --- tests/ui/nonminimal_bool.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/ui/nonminimal_bool.rs b/tests/ui/nonminimal_bool.rs index 908ef6cb2a0..1de8d4f9e58 100644 --- a/tests/ui/nonminimal_bool.rs +++ b/tests/ui/nonminimal_bool.rs @@ -173,3 +173,8 @@ fn issue_5794() { if !b == !c {} //~ ERROR: this boolean expression can be simplified if !b != !c {} //~ ERROR: this boolean expression can be simplified } + +fn issue_12371(x: usize) -> bool { + // Should not warn! + !x != 0 +}