]> git.proxmox.com Git - rustc.git/blame - src/tools/clippy/tests/ui/float_equality_without_abs.rs
Update upstream source from tag 'upstream/1.52.1+dfsg1'
[rustc.git] / src / tools / clippy / tests / ui / float_equality_without_abs.rs
CommitLineData
f20569fa
XL
1#![warn(clippy::float_equality_without_abs)]
2
3pub fn is_roughly_equal(a: f32, b: f32) -> bool {
4 (a - b) < f32::EPSILON
5}
6
7pub fn main() {
8 // all errors
9 is_roughly_equal(1.0, 2.0);
10 let a = 0.05;
11 let b = 0.0500001;
12
13 let _ = (a - b) < f32::EPSILON;
14 let _ = a - b < f32::EPSILON;
15 let _ = a - b.abs() < f32::EPSILON;
16 let _ = (a as f64 - b as f64) < f64::EPSILON;
17 let _ = 1.0 - 2.0 < f32::EPSILON;
18
19 let _ = f32::EPSILON > (a - b);
20 let _ = f32::EPSILON > a - b;
21 let _ = f32::EPSILON > a - b.abs();
22 let _ = f64::EPSILON > (a as f64 - b as f64);
23 let _ = f32::EPSILON > 1.0 - 2.0;
24
25 // those are correct
26 let _ = (a - b).abs() < f32::EPSILON;
27 let _ = (a as f64 - b as f64).abs() < f64::EPSILON;
28
29 let _ = f32::EPSILON > (a - b).abs();
30 let _ = f64::EPSILON > (a as f64 - b as f64).abs();
31}