Skip to content

Commit 9807c47

Browse files
authored
Merge pull request #1251 from Manishearth/fix_diverging_sub_expr
correctly traverse match expressions for diverging_sub_expr
2 parents 8426947 + 9c5d3f3 commit 9807c47

2 files changed

Lines changed: 5 additions & 1 deletion

File tree

clippy_lints/src/eval_order_dependence.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ impl<'a, 'tcx> DivergenceVisitor<'a, 'tcx> {
104104
self.visit_expr(guard);
105105
}
106106
// make sure top level arm expressions aren't linted
107-
walk_expr(self, &*arm.body);
107+
self.maybe_walk_expr(&*arm.body);
108108
}
109109
}
110110
_ => walk_expr(self, e),

tests/compile-fail/diverging_sub_expression.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ fn foobar() {
3131
8 => break,
3232
9 => diverge(),
3333
3 => (println!("moo"), diverge()), //~ ERROR sub-expression diverges
34+
10 => match 42 {
35+
99 => return,
36+
_ => ((), panic!("boo")),
37+
},
3438
_ => (println!("boo"), break), //~ ERROR sub-expression diverges
3539
};
3640
}

0 commit comments

Comments
 (0)