Causes the run-time system to behave like HP* Fortran on OpenVMS* Alpha systems and VAX* systems (VAX FORTRAN*).
Windows: Compatibility > Enable
VMS Compatibility
Linux: None
IA-32, IntelŪ EM64T, IntelŪ ItaniumŪ architecture
Linux: | -vms -novms |
Windows: | /vms /novms |
None
novms | The run-time system follows default IntelŪ Fortran behavior. |
This option causes the run-time system to behave like HP* Fortran on OpenVMS* Alpha systems and VAX* systems (VAX FORTRAN*).
It affects the following language features:
Certain defaults
In the absence of other options, vms sets the
defaults as check format and check
output_conversion.
Alignment
Option vms does not affect the alignment of
fields in records or items in common blocks. For compatibility with HP
Fortran on OpenVMS systems, use -align norecords
to pack fields of records on the next byte boundary.
Carriage control default
If option vms and option ccdefault
default are specified, carriage control defaults to FORTRAN if
the file is formatted and the unit is connected to a terminal.
INCLUDE
qualifiers
/LIST and /NOLIST are recognized at
the end of the file name in an INCLUDE statement at compile time. If the
file name in the INCLUDE statement does not specify the complete path,
the path used is the current directory. Note that if vms
is not specified, the path used is the directory where the file that contains
the INCLUDE statement resides.
Quotation mark character
A quotation mark (") character is recognized as starting an octal
constant ("0..7) instead of a character literal ("...").
Deleted records in relative files
When a record in a relative file is deleted, the first byte of that
record is set to a known character (currently '@' ). Attempts to read
that record later result in ATTACCNON errors. The rest of the record (the
whole record, if vms is not specified) is set
to nulls for unformatted files and spaces for formatted files.
ENDFILE records
When an ENDFILE is performed on a sequential unit, an actual 1-byte
record containing a Ctrl/Z is written to the file. If vms
is not specified, an internal ENDFILE flag is set and the file is truncated.
The vms option does not affect ENDFILE on relative
files: these files are truncated.
Implied logical unit numbers
The vms option enables Intel Fortran to recognize
certain environment variables at run time for ACCEPT, PRINT, and TYPE
statements and for READ and WRITE statements that do not specify a unit
number (such as READ (*,1000)).
Treatment of blanks in input
The vms option causes the defaults for the
keyword BLANK in OPEN statements to become 'NULL' for an explicit OPEN
and 'ZERO' for an implicit OPEN of an external or internal file.
OPEN statement effects
Carriage control defaults to FORTRAN if the file is formatted, and
the unit is connected to a terminal. Otherwise, carriage control defaults
to LIST. The vms option affects the record length
for direct access and relative organization files. The buffer size is
increased by 1 to accommodate the deleted record character.
Reading deleted records and ENDFILE records
The run-time direct access READ routine checks the first byte of the
retrieved record. If this byte is '@' or NULL ("\0"), then an
ATTACCNON error is returned. The run-time sequential access READ routine
checks to see if the record it just read is one byte long and contains
a Ctrl/Z. If this is true, it returns EOF.
Linux: None
Windows: /Qvms
check compiler option