Skip to content

Commit 328e105

Browse files
committed
question_mark: Lint only early returns
1 parent db4b3d2 commit 328e105

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

clippy_lints/src/question_mark.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,7 @@ impl Pass {
146146
}
147147
}
148148

149-
// Check if the block has an implicit return expression
150-
if let Some(ref ret_expr) = block.expr {
149+
if let Some(ExprKind::Ret(Some(ret_expr))) = block.expr.as_ref().map(|e| &e.node) {
151150
return Some(ret_expr.clone());
152151
}
153152

tests/ui/question_mark.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,12 @@ impl SomeStruct {
5858
self.opt
5959
};
6060

61+
let _ = if self.opt.is_none() {
62+
None
63+
} else {
64+
self.opt
65+
};
66+
6167
let _ = if self.opt.is_none() {
6268
return None;
6369
} else {

0 commit comments

Comments
 (0)