]> git.lizzy.rs Git - rust.git/blob - tests/ui/diverging_sub_expression.rs
iterate List by value
[rust.git] / tests / ui / diverging_sub_expression.rs
1 #![warn(clippy::diverging_sub_expression)]
2 #![allow(clippy::match_same_arms, clippy::logic_bug)]
3
4 #[allow(clippy::empty_loop)]
5 fn diverge() -> ! {
6     loop {}
7 }
8
9 struct A;
10
11 impl A {
12     fn foo(&self) -> ! {
13         diverge()
14     }
15 }
16
17 #[allow(unused_variables, clippy::unnecessary_operation, clippy::short_circuit_statement)]
18 fn main() {
19     let b = true;
20     b || diverge();
21     b || A.foo();
22 }
23
24 #[allow(dead_code, unused_variables)]
25 fn foobar() {
26     loop {
27         let x = match 5 {
28             4 => return,
29             5 => continue,
30             6 => true || return,
31             7 => true || continue,
32             8 => break,
33             9 => diverge(),
34             3 => true || diverge(),
35             10 => match 42 {
36                 99 => return,
37                 _ => true || panic!("boo"),
38             },
39             _ => true || break,
40         };
41     }
42 }