This section describes in detail Visual Fortran run-time errors 61 through 108.
In the following table, the first column lists error numbers returned to IOSTAT variables when an I/O error is detected.
The first line of the second column provides the message as it is displayed (following forrtl:), including the severity level, message number, and the message text. The following lines of the second column contain the status condition symbol (such as FOR$IOS_INCRECTYP) and an explanation of the message.
For information about the severity levels, see the Introduction.
Number | Severity Level, Number, and Message Text; Condition Symbol and Explanation |
---|---|
61 | severe or info1
(61): Format/variable-type mismatch
FOR$IOS_FORVARMIS2. An attempt was made either to read or write a real variable with an integer field descriptor (I, L, O, Z, B), or to read or write an integer or logical variable with a real field descriptor (D, E, or F). To suppress this error message, see the description of /check:noformat. |
62 | severe (62): Syntax error in format
FOR$IOS_SYNERRFOR. A syntax error was encountered while the RTL was processing a format stored in an array or character variable. |
63 | error or info1
(63): Output conversion error
FOR$IOS_OUTCONERR2. During a formatted output operation, the value of a particular number could not be output in the specified field length without loss of significant digits. When this situation is encountered, the overflowed field is filled with asterisks to indicate the error in the output record. If no ERR address has been defined for this error, the program continues after the error message is displayed. To suppress this error message, see the description of /check:nooutput_conversion. |
64 | severe (64): Input conversion error
FOR$IOS_INPCONERR2. During a formatted input operation, an invalid character was detected in an input field, or the input value overflowed the range representable in the input variable. The value of the variable was set to zero. |
65 | error (65): Floating invalid
FOR$IOS_FLTINV. During an arithmetic operation, the floating-point values used in a calculation were invalid for the type of operation requested or invalid exceptional values. For example, the error can occur if you request a log of the floating-point values 0.0 or a negative number. For certain arithmetic expressions, specifying the /check:nopower option can suppress this message. |
66 | severe (66): Output statement overflows record
FOR$IOS_OUTSTAOVE. An output statement attempted to transfer more data than would fit in the maximum record size. |
67 | severe (67): Input statement requires too much data
FOR$IOS_INPSTAREQ. Attempted to read more data than exists in a record with an unformatted READ statement or with a formatted sequential READ statement from a file opened with a PAD specifier value of 'NO'. |
68 | severe (68): Variable format expression value error
FOR$IOS_VFEVALERR2. The value of a variable format expression was not within the range acceptable for its intended use; for example, a field width was less than or equal to zero. A value of 1 was assumed, except for a P edit descriptor, for which a value of zero was assumed. |
703 | severe (70): Integer overflow
FOR$IOS_INTOVF. During an arithmetic operation, an integer value exceeded byte, word, or longword range. The result of the operation was the correct low-order part. See the Data Representation chapter in the Programmer's Guide for ranges of the various integer data types. Consider specifying a larger integer data size (modify source program or, for an INTEGER declaration, possibly use the /integer_size:size option). |
713 | severe (71): Integer divide by zero
FOR$IOS_INTDIV. During an integer arithmetic operation, an attempt was made to divide by zero. The result of the operation was set to the dividend, which is equivalent to division by 1. |
723 | error (72): Floating overflow
FOR$IOS_FLTOVF. During an arithmetic operation, a floating-point value exceeded the largest representable value for that data type. See the Data Representation chapter in the Programmer's Guide for ranges of the various data types. |
733 | error (73): Floating divide by zero
FOR$IOS_FLTDIV. During a floating-point arithmetic operation, an attempt was made to divide by zero. |
743 | error (74): Floating underflow
FOR$IOS_FLTUND. During an arithmetic operation, a floating-point value became less than the smallest finite value for that data type. Depending on the values of the /fpe:n option, the underflowed result was either set to zero or allowed to gradually underflow. See the Data Representation chapter in the Programmer's Guide for ranges of the various data types. |
753 | error (75): Floating point exception
FOR$IOS_SIGFPE. A floating-point exception occurred. Possible causes include:
|
773 | severe (77): Subscript out of range
FOR$IOS_SUBRNG. An array reference was detected outside the declared array bounds. |
783 | error (78): Process killed
FOR$IOS_SIGTERM. The process received a signal requesting termination of this process. Determine the source of this software termination signal. |
793 | error (79): Process quit
FOR$IOS_SIGQUIT. The process received a signal requesting termination of itself. Determine the source of this quit signal. |
953 | info (95): Floating-point conversion failed
FOR$IOS_FLOCONFAI. The attempted unformatted read or write of nonnative floating-point data failed because the floating-point value:
Very small numbers are set to zero (0). This error could be caused by the specified nonnative floating-point format not matching the floating-point format found in the specified file. Check the following:
|
108 | Severe (108): Cannot stat file
FOR$IOS_CANSTAFILE. Make sure correct file and unit were specified. |
2The ERR transfer is taken after completion of the I/O statement for error numbers 61, 63, 64, and 68. The resulting file status and record position are the same as if no error had occurred. However, other I/O errors take the ERR transfer as soon as the error is detected, so file status and record position are undefined.
3Identifies errors not returned by IOSTAT.