The information in this article applies to:
SYMPTOMSWhen an application reads a value less than -128 or larger than 127 into an INTEGER*1 variable, no run-time error occurs. Compiling with the /4Yb compiler option switch or the $DEBUG metacommand does not change the observed results. CAUSEThe run-time error management routine inspects the first byte of the input value to determine if it is in range and ignores the remaining bytes. STATUSMicrosoft has confirmed this to be a problem in FORTRAN versions 4.0, 4.01, 4.1, and 5.0 for MS-DOS and versions 4.1 and 5.0 for OS/2. This problem was corrected in FORTRAN version 5.1 for MS-DOS and OS/2. MORE INFORMATIONWhen an application reads an integer smaller than -127 or larger than 128 into an INTEGER*1 variable, the run-time library is designed to produce the following error: The observed behavior is as follows:
Therefore, if the first byte is out of range, the application
correctly generates an error. However, if the first byte is in range,
the program ignores the other bytes, produces no error, and returns
the value of the first byte.
Entering the values into the code example below produces corresponding results, as follows:
This cycle repeats every 128 values.
Sample Code
Additional query words: 4.00 4.01 4.10 5.00 buglist4.00 buglist4.01 buglist4.10 buglist5.00 fixlist5.10
Keywords : |
Last Reviewed: November 1, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |