]>
Commit | Line | Data |
---|---|---|
f20569fa XL |
1 | // run-rustfix |
2 | #![warn(clippy::precedence)] | |
3 | #![allow(unused_must_use, clippy::no_effect, clippy::unnecessary_operation)] | |
4 | #![allow(clippy::identity_op)] | |
5 | #![allow(clippy::eq_op)] | |
6 | ||
7 | macro_rules! trip { | |
8 | ($a:expr) => { | |
9 | match $a & 0b1111_1111u8 { | |
10 | 0 => println!("a is zero ({})", $a), | |
11 | _ => println!("a is {}", $a), | |
12 | } | |
13 | }; | |
14 | } | |
15 | ||
16 | fn main() { | |
17 | 1 << 2 + 3; | |
18 | 1 + 2 << 3; | |
19 | 4 >> 1 + 1; | |
20 | 1 + 3 >> 2; | |
21 | 1 ^ 1 - 1; | |
22 | 3 | 2 - 1; | |
23 | 3 & 5 - 2; | |
24 | -1i32.abs(); | |
25 | -1f32.abs(); | |
26 | ||
27 | // These should not trigger an error | |
28 | let _ = (-1i32).abs(); | |
29 | let _ = (-1f32).abs(); | |
30 | let _ = -(1i32).abs(); | |
31 | let _ = -(1f32).abs(); | |
32 | let _ = -(1i32.abs()); | |
33 | let _ = -(1f32.abs()); | |
34 | ||
35 | // Odd functions should not trigger an error | |
36 | let _ = -1f64.asin(); | |
37 | let _ = -1f64.asinh(); | |
38 | let _ = -1f64.atan(); | |
39 | let _ = -1f64.atanh(); | |
40 | let _ = -1f64.cbrt(); | |
41 | let _ = -1f64.fract(); | |
42 | let _ = -1f64.round(); | |
43 | let _ = -1f64.signum(); | |
44 | let _ = -1f64.sin(); | |
45 | let _ = -1f64.sinh(); | |
46 | let _ = -1f64.tan(); | |
47 | let _ = -1f64.tanh(); | |
48 | let _ = -1f64.to_degrees(); | |
49 | let _ = -1f64.to_radians(); | |
50 | ||
51 | // Chains containing any non-odd function should trigger (issue #5924) | |
52 | let _ = -1.0_f64.cos().cos(); | |
53 | let _ = -1.0_f64.cos().sin(); | |
54 | let _ = -1.0_f64.sin().cos(); | |
55 | ||
56 | // Chains of odd functions shouldn't trigger | |
57 | let _ = -1f64.sin().sin(); | |
58 | ||
59 | let b = 3; | |
60 | trip!(b * 8); | |
61 | } |