is_from_for_desugar: add match for for _ in x

This will avoid `let_unit_value` in the examples in the ui-test.
It might match too widely.
This commit is contained in:
Joonas Koivunen 2017-08-18 17:07:39 +03:00
parent 7cdaeae1b8
commit cf8e95eb22
2 changed files with 38 additions and 0 deletions

View file

@ -121,6 +121,22 @@ pub fn is_from_for_desugar(decl: &hir::Decl) -> bool {
], {
return true;
}}
// This detects a variable binding in for loop to avoid `let_unit_value`
// lint (see issue #1964).
//
// ```
// for _ in vec![()] {
// // anything
// }
// ```
if_let_chain! {[
let hir::DeclLocal(ref loc) = decl.node,
let hir::LocalSource::ForLoopDesugar = loc.source,
], {
return true;
}}
false
}