Article ID: 109874
Article Last Modified on 10/17/2003
APPLIES TO
- Microsoft FORTRAN PowerStation 1.0 Standard Edition
- Microsoft Fortran PowerStation 1.0a for MS-DOS
- Microsoft FORTRAN PowerStation 32
This article was previously published under Q109874
SYMPTOMS
A program that contains a simple arithmetic expression including constant
out of range may produce incorrect results. Using the -4Yb compiler option
does not give a run-time error on constants that are out of range even
though it should.
CAUSE
The constant folding algorithm (arithmetic performed at compile time)
generates 0 (zero) for the variable out of range.
RESOLUTION
Avoid using a simple constant expression that might be out of range. Use
the temporary variable for the intermediate results and then use this
variable in the expression. Compile the program with -4Yb and the
appropriate run-time error will be generated.
STATUS
Microsoft has confirmed this to be a problem in Microsoft FORTRAN
PowerStation 32 for NT, version 1.0 and FORTRAN Powerstation for
MS-DOS version 1.0 and 1.0a. This is not a problem in Microsoft FORTRAN
for MS-DOS, version 5.1, or FORTRAN PowerStation 32, version 4.0.
Additional query words: 1.00 runtime run time
Keywords: kbbug kbfix kbcompiler KB109874