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