/[no]vms
Syntax:
- /vms or /novms
The /vms option causes the run-time system to provide functions
like Compaq Fortran 77 for OpenVMS VAXTM Systems
(previously called VAX FORTRANTM).
In the visual development environment, specify Enable VMS Compatibility in the Compatibility
Compiler Option Category. The /vms option:
- In the absence of other options, sets the following command-line
defaults: /check:format, /check:output_conversion,
/static, /norecursive, and /names:lowercase.
- When /ccdefault:default is also specified, /vms
changes the default carriage control to FORTRAN if the file is formatted
and the unit is connected to a terminal.
- Allows use of the DELETE statement for 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 when /vms is not set) is set to nulls
for unformatted files and spaces for formatted files.
- When an ENDFILE is performed on a sequential unit, an actual
1-byte record containing a Ctrl+D (04 hex) is written to the file.
When you omit /vms, an internal ENDFILE flag is set and the file
is truncated. The /vms option does not affect ENDFILE on relative
files; the file is truncated.
- Changes certain OPEN statement BLANK keyword defaults. Changes
the default interpretation from BLANK='NULL' to BLANK='ZERO' for
an implicit open or internal file OPEN. For an explicit OPEN,
the default is always BLANK='NULL'.
- Changes certain OPEN statement effects. If the CARRIAGECONTROL
is defaulted, the file is formatted, and the unit is connected
to a terminal, then the carriage control defaults to FORTRAN.
Otherwise, it defaults to LIST. The /vms option affects the record
length for relative organization files. The buffer size is increased
by 1 to accommodate the deleted record character.
- LIST and /NOLIST are recognized at the end of the file specification
to the INCLUDE statement at compile time. If you specified /vms
and if the file specification does not include the directory path,
the current working directory is used as the default directory
path. If you omitted /vms, the directory path is where the file
that contains the INCLUDE statement resides.
- Changes internal file writes using list-directed I/O. A list-directed
write to an internal file results in removal of the first character
from the first element; the field length is decremented accordingly.
- The run-time direct access READ routine checks the first byte
of the retrieved record. If this byte is '@' or NULL ('\0'),
then ATTACCNON is returned. The run-time sequential access READ
routine checks to see if the record it just read is 1 byte long
and contains a Ctrl+D (04 hex) or a Ctrl+Z (1A hex). If this is
true, it returns EOF.
The default is /novms.