... | ... | @@ -134,7 +134,7 @@ The COJAC sniffer tracks the following kinds of event: |
|
|
* *Cancellation*: two floating point numbers almost cancel each other after an addition or subtraction, so that the least significant bits (often noise) are promoted to highest significance. Example: `(3.000001f - 3.0f)`
|
|
|
* *Questionable comparisons*: two floating point numbers are being compared, but they are very close together. Example: `if (3.000001f >= 3.0f)...`
|
|
|
* *Underflow*: the result of a division is so small that it gets rounded to zero. Example: `(2.5E-233 / 7.2E+233)`
|
|
|
* *NaN or Infinite results*: an operations leads to NaN or Infinity, and finite non-NaN operands. Example: `Math.acos(1.00001)`
|
|
|
* *NaN or Infinite results*: an operations leads to NaN or Infinity, and finite non-NaN operands. Example: `Math.acos(1.00001)`
|
|
|
|
|
|
Note that all these example expressions, when written verbatim in Java,
|
|
|
are evaluated at compile-time because they involve only literal values; so in
|
... | ... | |