Changing the defaults for the VS FORTRAN runtime option
Module AFH5GPRM contains the set of runtime option defaults for running with the VS FORTRAN compatibility library. You can accept the IBM®-supplied defaults or you can supply your own defaults. To customize AFBVGPRM for your site, use the IBM-supplied job AFHWVPRM, and modify the VSF2PARM macro instruction in an SMP/E USERMOD.
Use the AFH5PARM macro to change the IBM-supplied default values for VS FORTRAN runtime options. The default values that you assign are assumed if you do not override them.
There are no operands to set the default values for the runtime options AUTOTASK, PARALLEL, and PARTRACE; therefore, these options cannot be changed during installation. However, they can be changed at runtime.
There are no operands in the VSF2PARM macro to set the default values for the runtime options ERRUNIT, RDRUNIT, PRTUNIT, and PUNUNIT. The default I/O unit values for these units can be changed during installation through the Unit Attribute Table.
Syntax of the VSF2PARM macro instruction
[,ABSDUMP | NOABSDUMP]
[,CNVIOERR | NOCNVIOERR]
[,DEBUG | NODEBUG]
[,DEBUNIT(s1[,s2,...]) | NODEBUNIT]
[,ECPACK | NOECPACK]
[,FAIL(ABEND | RC |ABENDRC)]
[,FILEHIST | NOFILEHIST]
[,INQPCOPN | NOINQPCOPN]
[,IOINIT | NOIOINIT]
[,OCSTATUS | NOOCSTATUS]
[,RECPAD[(ALL)] | NORECPAD]
[,SPIE | NOSPIE]
[,STAE | NOSTAE]
[,XUFLOW | NOXUFLOW]
The IBM-supplied default values are underlined in the following option list. If an option is not specified, its default will be used, with the exception of the SCOPE option, which must always be specified.
- SCOPE = GLOBAL
- Required to replace the global runtime options table AFBVGPRM, which supplies default values for
all users of the VS FORTRAN compatibility library.
There is no default value for this option. SCOPE=GLOBAL must always be specified.
- ABSDUMP | NOABSDUMP
- Specifies whether the post-abend symbolic dump information is
printed.
- ABSDUMP
- Causes the post-abend symbolic dump information to be printed if an abnormal termination occurs.
- NOABSDUMP
- Suppresses the printing of the post-abend symbolic dump information.
NOABSDUMP is the default.
- CNVIOERR | NOCNVIOERR
- Specifies whether input conversion errors will be treated as I/O
errors.
- CNVIOERR
- Causes ERR and IOSTAT to recognize conversion errors as I/O errors.
- NOCNVIOERR
- Causes conversion errors not to be treated as I/O errors. ERR and IOSTAT have no effect for
these errors.
NOCNVIOERR is the default.
- DEBUG | NODEBUG
- Specifies whether interactive debug will be invoked. NODEBUG is the default.Note: This option does not apply to the Language Environment® VS FORTRAN compatibility library. If you want to use the VS FORTRAN Interactive Debugger, then run your program with the VS FORTRAN Version 2 library rather than with Language Environment.
- DEBUNIT | NODEBUNIT
- Specifies whether Fortran unit numbers will
be treated as if connected to a terminal device. NODEBUNITNote: This option does not apply to the Language Environment VS FORTRAN compatibility library. If you want to use the VS FORTRAN Interactive Debugger, then run your program with the VS FORTRAN Version 2 library rather than with Language Environment.
- ECPACK | NOECPACK
- Specifies whether a data space should be filled with as many extended
common blocks as possible before a new data space is allocated.
- ECPACK
- Specifies extended common blocks be placed into the fewest possible number of data spaces. This
option reduces some of the overhead that is associated with referencing data spaces.
ECPACK is the default.
- NOECPACK
- Specifies that each extended common block be placed into a separate data space. As a result, reference errors made beyond the bounds of an extended common block might be more easily detected.
- FAIL (ABEND | RC | ABENDRC)
- Indicates how applications that fail are to be terminated: either by a nonzero return or by an
abnormal termination (ABEND). The suboption of the FAIL option might have the following meanings.
- ABEND
- Causes the program to end by an abnormal termination (ABEND) with a user completion code of 240.
- RC
- Causes the program to end normally but with a nonzero return code (16).
- ABENDRC
- Causes the program to end by abnormal termination (ABEND) when failure is because of a condition
for which the operating system would usually cause an ABEND; and to end with a nonzero return code
when failure is by some condition detected by VS FORTRAN.
ABENDRC is the default.
- FILEHIST | NOFILEHIST
- Specifies whether to allow the file definition of a file referred to by a ddname to be changed
at run time.
- FILEHIST
- Causes the history of a file to be used in determining its existence. In particular it checks to
see whether:
- The file was ever internally opened (in which case it exists), or
- The file was deleted by a CLOSE statement (in which case it does not exist).
When FILEHIST is specified, you cannot change the file definition of a file at runtime and have the same results produced as previous VS FORTRAN releases.
FILEHIST is the default.
- NOFILEHIST
- Causes the history of a file to be disregarded in determining its existence. If you specify NOFILEHIST you should consider:
- If you change file definitions at run time file is treated as if it was being opened for the first time. Before the file definition can be changed, the existing file must be closed.
- If you do not change file definitions at run time, you must use STATUS='NEW' to reopen an empty file that has been closed with STATUS='KEEP', because the file does not appear to exist to Fortran.
- INQPCOPN | NOINQPCOPN
- Specifies whether a unit is connected to a file when executing
an INQUIRE by unit.
- INQPCOPN
- Specifies that, if a unit is connected to a file, even if it was preconnected and no I/O
statement has been executed, a value of true is returned in the variable or an array element given
in the OPENED specifier from an INQUIRE by unit statement.
INQPCOPN is the default.
- NOINQPCOPN
- Indicates that, if and only if a unit is internally open, a value of true is returned in the
variable or an array element given in the OPENED specifier for an INQUIRE by unit statement.
Internally open means that the unit is connected to a file by an OPEN statement, or if the unit has been preconnected, that a READ, WRITE, PRINT, REWIND, or ENDFILE statement has been successfully executed.
- IOINIT | NOIOINIT
- Specifies whether the normal initialization for I/O processing
will occur during initialization of the runtime environment.
- IOINIT
- Causes the normal initialization for I/O processing to occur during initialization of the runtime environment. IOINIT is the default.
- NOIOINIT
- Suppresses initialization for I/O processing. This means that the error message unit is not opened during initialization of the runtime environment. However, this does not prevent I/O from occurring on this or on any other unit. (Such I/O might fail if proper DD statements are not given.)
- OCSTATUS | NOOCSTATUS
- Specifies whether file existence is checked during the running
of OPEN statements, whether files are deleted from their storage media,
and whether files that were closed can be reconnected without an OPEN
statement.
- OCSTATUS
- Specifies:
- File existence is checked for consistency with the OPEN statement specifiers
STATUS=
'OLD'and STATUS='NEW'. - File deletion occurs when the CLOSE statement specifier
STATUS=
'DELETE'is given (on devices which allow deletion). - A preconnected file is disconnected when a CLOSE statement is given or when another file is opened on the same unit. It can be reconnected only by an OPEN statement when there is no other file currently connected to that unit.
- File existence is checked for consistency with the OPEN statement specifiers
STATUS=
- NOOCSTATUS
- Specifies:
- File existence is not checked for consistency with the OPEN statement
specifiers STATUS=
'OLD'and STATUS='NEW'. - File deletion does not occur when the CLOSE statement specifier
STATUS=
'DELETE'is given. - A preconnected file is disconnected when a CLOSE statement is given or when another file is opened on the same unit. It can be reconnected by a sequential READ or WRITE, BACKSPACE, OPEN, REWIND, or ENDFILE statement when there is no other file that is currently connected to that unit.
- File existence is not checked for consistency with the OPEN statement
specifiers STATUS=
- RECPAD[(ALL)] | NORECPAD
- Specifies whether a formatted input record is padded with blanks.
- RECPAD
- Causes a formatted input record within an internal file or a varying/undefined length record (RECFM=U or V) external file to be padded with blanks when an input list and format specification require more data from the record than the record contains. Blanks added for padding are interpreted as though the input record actually contains blanks in those fields. If ALL is specified, a formatted input record is padded regardless of the record format of the file.
- NORECPAD
- Specifies that an input list and format specification must not require more data from an input
record than the record contains. If more data is required, condition FOR1002E is raised.
NORECPAD is the default.
- SPIE | NOSPIE
- Specifies whether the runtime environment takes control when a
program interrupt occurs.
- SPIE
- Specifies that the runtime environment takes control when a program interrupt occurs. SPIE is the default.
- NOSPIE
- Specifies that the runtime environment does not take control when
a program interrupt occurs. If you specify NOSPIE, various runtime
functions that depend on a return of control after a program interrupt
are not available. These include the following:
- The messages and corrective action for a floating-point overflow.
- The messages and corrective action for a floating-point underflow interrupt (unless the underflow is to be handled by the hardware based upon the XUFLOW option).
- The messages and corrective action for a floating-point or fixed-point divide exception.
- The simulation of extended precision floating-point operations on processors that do not have these instructions.
- The realignment of vector operands that are not on the required storage boundaries and the rerunning of the failed instruction.
- STAE | NOSTAE
- Specifies whether the runtime environment takes control if an
abnormal termination occurs.
- STAE
- Specifies that the runtime environment will take control when an abnormal termination occurs. STAE is the default.
- NOSTAE
- Specifies that the runtime environment does not take control when an abnormal termination
occurs. If NOSTAE is specified, abnormal termination is handled by the operating system rather than
by the VS FORTRAN runtime environment. In this case the following occurs:
- Message AFB240I, which shows the PSW and register contents at the time of the abend, is not printed. However, this information will be provided by the operating system.
- The indication of which Fortran statement caused the failure will not be printed.
- The traceback of the routines will not be printed.
- The post-abend symbolic dump will not be printed even with the option ABSDUMP in effect.
- Certain exceptional conditions handled by the runtime environment or by the debugging device cause system abends rather than VS FORTRAN messages. For example, some errors that occur during running of an OPEN statement result in a system abend rather than the printing of message AFB219I, which allows the program to possibly continue running.
- An MTF subtask that terminates unexpectedly causes a user ABEND 922 in the main task rather than message AFB922I.
- XUFLOW | NOXUFLOW
- Specifies whether an exponent underflow will cause a program interrupt.
- XUFLOW
- Allows an exponent underflow to cause a program interrupt, followed by a message from the VS FORTRAN Version 2 Library, followed by a standard fixup. XUFLOW is the default.
- NOXUFLOW
- Suppresses the program interrupt that is caused by an exponent underflow. The hardware sets the result to zero.