mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-10 15:14:29 +00:00
Auto merge of #4803 - tomprogrammer:issue-4732, r=phansch
Fix false positive in explicit_counter_loop lint When the counter was used in a closure after the loop the lint didn't detect the usage of the counter correctly. changelog: Fix false positive in `explicit_counter_loop` Fixes #4732
This commit is contained in:
commit
2646b108d5
2 changed files with 15 additions and 1 deletions
|
@ -2194,8 +2194,9 @@ impl<'a, 'tcx> Visitor<'tcx> for InitializeVisitor<'a, 'tcx> {
|
|||
}
|
||||
walk_expr(self, expr);
|
||||
}
|
||||
|
||||
fn nested_visit_map<'this>(&'this mut self) -> NestedVisitorMap<'this, 'tcx> {
|
||||
NestedVisitorMap::None
|
||||
NestedVisitorMap::OnlyBodies(&self.cx.tcx.hir())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -132,3 +132,16 @@ mod issue_1670 {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
mod issue_4732 {
|
||||
pub fn test() {
|
||||
let slice = &[1, 2, 3];
|
||||
let mut index = 0;
|
||||
|
||||
// should not trigger the lint because the count is used after the loop
|
||||
for _v in slice {
|
||||
index += 1
|
||||
}
|
||||
let _closure = || println!("index: {}", index);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue