Table A-1 lists possible Fortran run-time I/O errors. Other errors given by the operating system may also occur.
Each error is listed on the screen alone or with one of the following phrases appended to it:
apparent state: | unit num named user filename | |
last format: | string | |
lately (reading, writing) | (sequential, direct, indexed) | |
formatted, unformatted | (external, internal) IO |
When the Fortran run-time system detects an error, the following actions take place:
When a run-time error occurs, the program terminates with one of the error messages shown in Table A-1. All of the errors in the table are output in the format user filename : message.
Table A-1. Run-Time Error Messages
Number | Message/Cause |
---|---|
100 | error in format Illegal characters are encountered in FORMAT statement. |
101 | out of space for I/O unit table Out of virtual space that can be allocated for the I/O unit table. |
102 | formatted io not allowed Cannot do formatted I/O on logical units opened for unformatted I/O. |
103 | unformatted io not allowed Cannot do unformatted I/O on logical units opened for formatted I/O. |
104 | direct io not allowed Cannot do direct I/O on sequential file. |
106 | can't backspace file Cannot perform BACKSPACE/REWIND on file. |
107 | null file name Filename specification in OPEN statement is null. |
109 | unit not connected The specified filename has already been opened as a different logical unit. |
110 | off end of record Attempt to do I/O beyond the end of the record. |
112 | incomprehensible list input Input data for list-directed read contains invalid character for its data type. |
113 | out of free space Cannot allocate virtual memory space on the system. |
114 | unit not connected Attempt to do I/O on unit that has not been opened and cannot be opened. |
115 | read unexpected character Unexpected character encountered in formatted or directed read. |
116 | blank logical input field Invalid character encountered for logical value. |
117 | bad variable type Specified type for the namelist is invalid. This error is most likely caused by incompatible versions of the front end and the run-time I/O library. |
118 | bad namelist name The specified namelist name cannot be found in the input data file. |
119 | variable not in namelist The namelist variable name in the input data file does not belong to the specified namelist. |
120 | no end record $END is not found at the end of the namelist input data file. |
121 | namelist subscript out of range The array subscript of the character substring value in the input data file exceeds the range for that array or character string. |
122 | negative repeat count The repeat count in the input data file is less than or equal to zero. |
123 | illegal operation for unit You cannot set your own buffer on direct unformatted files. |
124 | off beginning of record Format edit descriptor causes positioning to go off the beginning of the record. |
125 | no * after repeat count An asterisk (*) is expected after an integer repeat count. |
126 | 'new' file exists The file is opened as new but already exists. |
127 | can't find 'old' file The file is opened as old but does not exist. |
130 | illegal argument Invalid value in the I/O control list. |
131 | duplicate key value on write Cannot write a key that already exists. |
132 | indexed file not open Cannot perform indexed I/O on an unopened file. |
133 | bad isam argument The indexed I/O library function receives a bad argument because of a corrupted index file or bad run-time I/O libraries. |
134 | bad key description The key description is invalid. |
135 | too many open indexed files Cannot have more than 32 open indexed files. |
136 | corrupted isam file The indexed file format is not recognizable. This error is usually caused by a corrupted file. |
137 | isam file not opened for exclusive access Cannot obtain lock on the indexed file. |
138 | record locked The record has already been locked by another process. |
138 | key already exists The key specification in the OPEN statement has already been specified. |
140 | cannot delete primary key DELETE cannot be executed on a primary key. |
141 | beginning or end of file reached The index for the specified key points beyond the length of the indexed data file. This error is probably because of corrupted ISAM files or a bad indexed I/O run-time library. |
142 | cannot find request record The requested key for indexed READ does not exist. |
143 | current record not defined Cannot execute REWRITE, UNLOCK, or DELETE before doing a READ to define the current record. |
144 | isam file is exclusively locked The indexed file has been exclusively locked by another process. |
145 | filename too long The indexed filename exceeds 128 characters. |
148 | key structure does not match file structure Mismatch between the key specifications in the OPEN statement and the indexed file. |
149 | direct access on an indexed file not allowed Cannot have direct-access I/O on an indexed file. |
150 | keyed access on a sequential file not allowed Cannot specify keyed access together with sequential organization. |
151 | keyed access on a relative file not allowed Cannot specify keyed access together with relative organization. |
152 | append access on an indexed file not allowed Cannot specifiy append access together with indexed organization. |
153 | must specify record length A record length specification is required when opening a direct or keyed access file. |
154 | key field value type does not match key type The type of the given key value does not match the type specified in the OPEN statement for that key. |
155 | character key field value length too long The length of the character key value exceeds the length specification for that key. |
156 | fixed record on sequential file not allowed RECORDTYPE='fixed' cannot be used with a sequential file. |
157 | variable records allowed only on unformatted sequential file RECORDTYPE='variable' can only be used with an unformatted sequential file. |
158 | stream records allowed only on formatted sequential file RECORDTYPE='stream_lf' can only be used with a formatted sequential file. |
159 | maximum number of records in direct access file exceeded The specified record is bigger than the MAXREC= value used in the OPEN statement. |
160 | attempt to create or write to a read-only file User does not have write permission on the file. |
161 | must specify key descriptions Must specify all the keys when opening an indexed file. |
162 | carriage control not allowed for unformatted units CARRIAGECONTROL specifier can only be used on a formatted file. |
163 | indexed files only Indexed I/O can only be done on logical units that have been opened for indexed (keyed) access. |
164 | cannot use on indexed file Illegal I/O operation on an indexed (keyed) file. |
165 | cannot use on indexed or append file Illegal I/O operation on an indexed (keyed) or append file. |
167 | invalid code in format specification Unknown code is encountered in format specification. |
168 | invalid record number in direct access file The specified record number is less than 1. |
169 | cannot have endfile record on non-sequential file Cannot have an endfile on a direct- or keyed-access file. |
170 | cannot position within current file Cannot perform fseek() on a file opened for sequential unformatted I/O. |
171 | cannot have sequential records on direct access file Cannot do sequential formatted I/O on a file opened for direct access. |
173 | cannot read from stdout Attempt to read from stdout. |
174 | cannot write to stdin Attempt to write to stdin. |
176 | illegal specifier The I/O control list contains an invalid value for one of the I/O specifiers. For example, ACCESS='INDEXED'. |
180 | attempt to read from a writeonly file User does not have read permission on the file. |
181 | direct unformatted io not allowed Direct unformatted file cannot be used with this I/O operation. |
182 | cannot open a directory The name specified in FILE= mut be the name of a file, not a directory. |
183 | subscript out of bounds The exit status returned when a program compiled with the –C option has an array subscript that is out of range. |
184 | function not declared as varargs Variable argument routines called in subroutines that have not been declared in a $VARARGS directive. |
185 | internal error Internal run-time library error. |