...
Comparisons with NaN values can lead to unexpected results.
Rule | Severity | Likelihood |
|---|
Detectable | Repairable | Priority | Level |
|---|---|---|---|
NUM07-J | Low | Probable | Yes |
Yes |
P6 |
L2 |
Automated Detection
Automated detection of comparison with NaN is straightforward. Sound determination of whether the possibility of an unordered result has been correctly handled is not feasible in the general case. Heuristic checks could be useful.
| Tool | Version | Checker | Description |
|---|
FB.CORRECTNESS.FE_TEST_IF_EQUAL_TO_NOT_A_NUMBER
Doomed test for equality to NaN
| Klocwork |
| JAVA.COMPARE.NAN | |||||||
| Parasoft Jtest |
| CERT.NUM07.NAN | Avoid comparisons to Double.NaN or Float.NaN | ||||||
| PVS-Studio |
| V6038 |
Bibliography
...
...