NOCMPR2
However, under NOCMPR2, SIZE ERROR applies only to final results. In the MULTIPLY example, SIZE ERROR cannot occur when the 36-digit (immediate) result is moved into the 30-digit (or 31-digit) (intermediate) result. Consequently, the MULTIPLY and COMPUTE statements become equivalent in this regard. This behavior also applies to the DIVIDE statement.
Such statements will now be flagged by the following compiler message:
- IGYPG3113-W
- Truncation of high-order digit positions can occur due to precision of intermediate results exceeding 30-digits.
If, at run time, truncation actually does occur, the following
message will be issued:
- IGZ0036W
- Truncation of high order digit positions occurred in program "program-name" on line number "n".