From 4f374824b187b7d013e958593f45c7943e36949e Mon Sep 17 00:00:00 2001 From: Cameron Steffen Date: Thu, 1 Jun 2017 21:31:42 -0500 Subject: [PATCH] fix never_loop --- clippy_lints/src/attrs.rs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/clippy_lints/src/attrs.rs b/clippy_lints/src/attrs.rs index 1c4ac3c6261..e89a997ec03 100644 --- a/clippy_lints/src/attrs.rs +++ b/clippy_lints/src/attrs.rs @@ -184,16 +184,15 @@ fn is_relevant_trait(tcx: ty::TyCtxt, item: &TraitItem) -> bool { } fn is_relevant_block(tcx: ty::TyCtxt, tables: &ty::TypeckTables, block: &Block) -> bool { - for stmt in &block.stmts { + if let Some(stmt) = block.stmts.first() { match stmt.node { - StmtDecl(_, _) => return true, + StmtDecl(_, _) => true, StmtExpr(ref expr, _) | - StmtSemi(ref expr, _) => { - return is_relevant_expr(tcx, tables, expr); - }, + StmtSemi(ref expr, _) => is_relevant_expr(tcx, tables, expr), } + } else { + block.expr.as_ref().map_or(false, |e| is_relevant_expr(tcx, tables, e)) } - block.expr.as_ref().map_or(false, |e| is_relevant_expr(tcx, tables, e)) } fn is_relevant_expr(tcx: ty::TyCtxt, tables: &ty::TypeckTables, expr: &Expr) -> bool {