Files
openide/java/java-tests/testData/inspection/dataFlow/fixture/DoubleNaN.java
Tagir Valeev a07f99ad4a [kotlin-dfa] Fix float/double comparison
GitOrigin-RevId: 68699ea37c4a033fbc047045ee58856657585ba0
2021-09-25 14:14:52 +00:00

46 lines
918 B
Java

public class DoubleNaN {
void test(double x, double y) {
if (x > y) {}
else if (x == y) {}
else if (x < y) {}
else {
// x or y is NaN
}
}
native double getSomeDouble();
void testComparison() {
double RPM = getSomeDouble();
if (RPM > 0) {
//code
} else if (RPM <= 0) {//intellisense assumes always true
//code
} else {//can trigger
//code
}
}
void testComparison2(double RPM) {
if (RPM > 0) {
//code
} else if (RPM <= 0) {//intellisense assumes always true
//code
} else {//can trigger
//code
}
}
void test() {
double x = Double.NaN;
double y = Double.NaN;
if(<warning descr="Condition 'x >= y' is always 'false'">x >= y</warning>) {
System.out.println("oops");
}
}
void test2() {
System.out.println(1.0 == Double.NaN);
System.out.println(!(1.0 < Double.NaN));
}
}