Skip to content

Commit

Permalink
Auto merge of #13513 - samueltardieu:push-zvvzytrovulq, r=y21
Browse files Browse the repository at this point in the history
Style: do not defensively use `saturating_sub()`

Using `saturating_sub()` here in code which cannot fail brings a false sense of security. If for any reason a logic error was introduced and caused `self.loop_depth` to reach 0 before being decremented, using `saturating_sub(1)` would silently mask the programming error instead of panicking loudly as it should (at least in dev profile).

changelog: none
  • Loading branch information
bors committed Oct 6, 2024
2 parents f7aaecf + af6816c commit 1c9e5d0
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion clippy_lints/src/loops/infinite_loop.rs
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ impl<'hir> Visitor<'hir> for LoopVisitor<'hir, '_> {
ExprKind::Loop(..) => {
self.loop_depth += 1;
walk_expr(self, ex);
self.loop_depth = self.loop_depth.saturating_sub(1);
self.loop_depth -= 1;
},
_ => {
// Calls to a function that never return
Expand Down

0 comments on commit 1c9e5d0

Please sign in to comment.