Previous | Contents | Index |
Controls how the compiler treats fixed-form file source lines that are shorter than the statement field width (72 characters, or 132 characters if /EXTEND_SOURCE is in effect.) This determines how the compiler treats character and Hollerith constants that are continued across two or more source lines. This qualifier does not apply to free-form source files.
Specifying /PAD_SOURCE causes the compiler to treat short source lines as if they were padded with blanks out to the statement field width. This may be useful when compiling programs developed for non-Compaq compilers that assume that short source lines are blank-padded.
The default, /NOPAD_SOURCE, is compatible with current and previous Compaq Fortran compilers, which causes the compiler to not treat short source lines as padded with blanks so that the first character of a continuation line immediately follows the last character of the previous line.
If /NOPAD_SOURCE is in effect, the compiler issues an informational message if it detects a continued constant that might be affected by blank padding.
For More Information:
On /WARNINGS=USAGE qualifier, see Section 2.3.48.
2.3.34 /REAL_SIZE --- Floating-Point Data Size
The /REAL_SIZE qualifier controls how the compiler interprets floating-point declarations that do not have a specified length.
The qualifier has the following form:
/REAL_SIZE=
|
32
Defines REAL declarations, constants, functions, and intrinsics as REAL (KIND=4) (single precision) and COMPLEX declarations, constants, functions, and intrinsics as COMPLEX (KIND=4) (single complex).64
Defines REAL and COMPLEX declarations, constants, functions, and intrinsics as REAL (KIND=8) (double precision) and COMPLEX declarations, constants, functions, and intrinsics as COMPLEX (KIND=8) (double complex).This also causes intrinsic functions to produce a double precision REAL (KIND=8) or COMPLEX (KIND=8) result instead of a single precision REAL (KIND=4) or COMPLEX (KIND=4) result, except if the argument is explicitly typed.
For instance, references to the CMPLX intrinsic produce DCMPLX results (COMPLEX (KIND=8)), except if the argument to CMPLX is explicitly typed as REAL (KIND=4) or COMPLEX (KIND=4), in which case the resulting data type is COMPLEX (KIND=4). Other affected intrinsic functions include CMPLX, FLOAT, REAL, SNGL, and AIMAG.
128
Defines REAL declarations, constants, functions, and intrinsics as REAL (KIND=16) or native (IEEE style) X_float format. It does not affect COMPLEX objects.If you omit /REAL_SIZE=128, /REAL_SIZE=64 is used where DOUBLE PRECISION declarations are treated the same as REAL (KIND=8) declarations.
The default is /REAL_SIZE=32.
For More Information:
The /RECURSIVE qualifier requests that Compaq Fortran generate code and allocate data so that a subroutine or a function can be called recursively.
The /RECURSIVE qualifier:
Subprograms declared with the RECURSIVE keyword are always recursive (whether you specify or omit the /RECURSIVE qualifier).
Variables declared with the AUTOMATIC statement or attribute always use stack-based storage for all local variables (whether you specify or omit the /RECURSIVE or /AUTOMATIC qualifiers).
Specifying /RECURSIVE sets /AUTOMATIC.
For More Information:
On the RECURSIVE keyword, see the Compaq Fortran Language Reference Manual.
2.3.36 /REENTRANCY --- Specify Threaded or Asynchronous Reentrancy
The /REENTRANCY qualifier specifies whether code generated for the main program and any Fortran procedures it calls will be relying on threaded or asynchronous reentrancy. The default is /REENTRANCY=NONE.
The qualifier has the following form:
/REENTRANCY=
|
ASYNC
Informs the Compaq Fortran run-time library that the program may contain asynchronous handlers that could call the RTL. The run-time library will guard against asynchronous interrupts inside its own critical regions.NONE
Informs the Compaq Fortran run-time library that the program will not be relying on threaded or asynchronous reentrancy. The run-time library need not guard against such interrupts inside its own critical regions. Same as /NOREENTRANCY.THREADED
Informs the Compaq Fortran run-time library that the program is multithreaded, such as programs using the DECthreads library. The run-time library will use thread locking to guard its own critical regions.To use the kernel threads libraries, also specify the /THREADS_ENABLE qualifier on the LINK command (see the Guide to DECthreads).
Specifying NOREENTRANCY is equivalent to /REENTRANCY=NONE.
For More Information:
On writing multithreaded applications, see the Guide to DECthreads.
2.3.37 /ROUNDING_MODE --- Specify IEEE Floating-Point Rounding Mode
The /ROUNDING_MODE qualifier allows you to control how rounding occurs during calculations. This qualifier applies only to IEEE data types (when you specify /FLOAT=IEEE_FLOAT).
The qualifier has the following form:
/ROUNDING_MODE=
|
NEAREST
This is the normal rounding mode, where results are rounded to the nearest representable value. If you omit the /ROUNDING_MODE qualifier, /ROUNDING_MODE=NEAREST is used.CHOPPED
Results are rounded toward zero (representative value).MINUS_INFINITY
Results are rounded toward the next smallest representative value.
The rounding mode applies to each program unit being compiled.
For More Information:
Controls whether the Compaq Fortran compiler:
The default is /NOSEPARATE_COMPILATION.
When creating object modules for use in an object library, consider using /SEPARATE_COMPILATION to minimize the size of the routines included by the linker as it creates the executable image. In most cases, to allow more interprocedure optimizations, use the default /NOSEPARATE_COMPILATION.
For More Information:
The /SEVERITY qualifier changes one or both of the following:
The qualifier has the following form:
/SEVERITY=WARNINGS=
|
The default is that compiler diagnostic warning messages and standards checking messages have a severity of warning or /SEVERITY=(WARNINGS=WARNING).
You can specify one of the following:
For example, the following command line requests that compiler diagnostic messages have a severity of warning (default) and standards checking messages have a severity of error (and requests Fortran 95 standards checking)::
$ FORTRAN/SEVERITY=WARNINGS=STDERROR/STANDARD=F95 file.F90 |
For More Information:
The /SHOW qualifier controls whether optionally listed source lines and a symbol map appear in the source listing. (Optionally listed source lines are text-module source lines.)
For the /SHOW qualifier to take effect, you must specify the /LIST qualifier.
The qualifier has the following form:
/SHOW =
|
ALL
Requests that all optionally listed source lines and a symbol map be included in the listing file. Specifying /SHOW is equivalent to /SHOW=ALL.[NO]INCLUDE
Controls whether the source lines from any file or text module specified by INCLUDE statements are included in the source listing.[NO]MAP
Controls whether the symbol map is included in the listing file.NONE
Requests that no optionally listed source lines or a symbol map be included in the listing file. Specifying /NOSHOW is equivalent to /SHOW=NONE.
The /SHOW qualifier defaults are NOINCLUDE and MAP.
Specifying the qualifier /SHOW without any arguments is equivalent to specifying /SHOW=ALL; specifying /NOSHOW without any arguments is equivalent to specifying /SHOW=NONE.
For More Information:
On the /LIST qualifier, see Section 2.3.25.
2.3.41 /SOURCE_FORM --- Fortran 90/95 Source Form
The /SOURCE_FORM qualifier allows you to specify whether all Compaq Fortran source files on the FORTRAN command line are in fixed or free source form. The qualifier has the following form:
/SOURCE_FORM=
|
FIXED
Specifying /SOURCE_FORM=FIXED indicates that the input source files will be in fixed source form, regardless of the file type. Source files with a file type of FOR or F (or any file type other than F90) are assumed to contain fixed source form.FREE
Specifying /SOURCE_FORM=FREE indicates that the source form will be free form, regardless of the file type. Source files with a file type of F90 are assumed to contain free source form.
For More Information:
On column positions and source forms, see the Compaq Fortran Language Reference Manual.
2.3.42 /STANDARD --- Perform Fortran 90/95 Standards Checking
The /STANDARD qualifier instructs the compiler to generate informational messages for language elements that are not standard in the Fortran 90 or Fortran 95 language and that can be identified at compile-time. The default is /NOSTANDARD.
The qualifier has the following form:
/[NO]STANDARD=
|
The /STANDARD=F90 qualifier (or /STANDARD) requests that the compiler issue informational messages for:
The /STANDARD=F95 qualifier requests that the compiler issue informational messages for:
Specifying /STANDARD=NONE is equivalent to /NOSTANDARD.
If you specify the /NOWARNINGS qualifier, the /STANDARD qualifier is ignored.
If you omit the /STANDARD qualifier, the default is /NOSTANDARD.
To change the severity of standards checking warning messages to error severity, specify /SEVERITY=WARNINGS=SDTERROR (see Section 2.3.39).
Source statements that do not conform to Fortran 90 or Fortran 95 language standards are detected by the Compaq Fortran compiler under the following circumstances:
Given these circumstances, the compiler is able to detect most instances of nonconforming usage. It does not detect all instances because the /STANDARD qualifier does not produce checks for all nonconforming usage at compile time. In general, the unchecked cases of nonconforming usage arise from the following situations:
Most of the unchecked cases occur in the interface between calling and called subprograms. However, other cases are not checked, even within a single subprogram.
The following items are known to be unchecked:
For More Information:
On the Compaq Fortran language, see the Compaq Fortran Language Reference Manual.
2.3.43 /SYNCHRONOUS_EXCEPTIONS --- Report Exceptions More Precisely
The /SYNCHRONOUS_EXCEPTIONS qualifier associates an exception with the instruction that causes it. Specifying /SYNCHRONOUS_EXCEPTIONS slows program execution, so only specify it when debugging a specific problem, such as locating the source of an exception.
If you omit /SYNCHRONOUS_EXCEPTIONS, /NOSYNCHRONOUS_EXCEPTIONS is used where exceptions can be reported imprecisely one or more instructions after the instruction that caused the exception.
Specifying /IEEE_MODE=FAST (default) provides imprecise exception reporting (same as /NOSYNCHRONOUS_EXCEPTIONS). Specifying other /IEEE_MODE keywords (when you also specify /FLOAT=IEEE_FLOAT) provides precise exception reporting (same as /SYNCHRONOUS_EXCEPTIONS).
For More Information:
The /SYNTAX_ONLY qualifier requests that source file be checked only for correct syntax. If you specify the /SYNTAX_ONLY qualifier, no code is generated, no object file is produced, and some error checking done by the optimizer is bypassed (for example, checking for uninitialized variables with /WARNINGS=UNINITIALIZED). This qualifier allows you to do a quick syntax check of your source file, and is especially useful in conjunction with /WARNINGS=ARGUMENT_CHECKING.
For More Information:
The /VERSION qualifier can be used alone on the FORTRAN command line to display the Compaq Fortran version number. If you specify /VERSION, compilation does not occur.
For example:
$ FORTRAN /VERSION Compaq Fortran V7.n-nnn-nnnn $ |
The /TIE qualifier enables compiled code to be used with translated shared images, either because the code might call into a translated image or might be called from a translated image. Specifying /NOTIE, the default, indicates the compiled code will not be associated with a translated image.
If you specify /TIE, link the object module using the LINK command /NONATIVE_ONLY qualifier, and follow the guidelines provided in Section A.6.
For More Information:
On appropriate LINK command qualifiers, see Section 3.1.1 and
Section A.6.
2.3.47 /VMS --- Request Compaq Fortran 77 for OpenVMS VAX Compatibility
The /VMS qualifier (default) specifies that the run-time system behave like Compaq Fortran 77 for OpenVMS VAX Systems (VAX FORTRANtm) in certain ways. To prevent this behavior, specify /NOVMS.
The /VMS qualifier specifies the following aspects of the run-time system:
To override the effects of the /VMS qualifier, specify /NOVMS.
For More Information:
On the OPEN statement, see the Compaq Fortran Language Reference Manual.
2.3.48 /WARNINGS --- Warning Messages and Compiler Checking
The /WARNINGS qualifier instructs the compiler to generate informational (I-level) and warning (W-level) diagnostic messages in response to informational and warning-level errors.
The following /WARNING keywords prevent the display of warning messages:
The following /WARNING keywords can display additional warning messages (request additional checking):
The qualifier has the following form:
/WARNINGS =
|
[NO]ALIGNMENT
Controls whether the compiler issues diagnostic messages when variables or arrays (created in COMMON or EQUIVALENCE statements) are declared in such a way that they cross natural boundaries for their data size. For example, a diagnostic message is issued if /WARNINGS=ALIGNMENT is in effect and the virtual address of a REAL (KIND=8) variable is not a multiple of 8.The default is ALIGNMENT. To suppress diagnostic messages about unaligned data, specify NOALIGNMENT.
To control the alignment of fields in common blocks, derived types, and record structures, use the /ALIGNMENT qualifier (see Section 2.3.3).
[NO]ARGUMENT_CHECKING
Controls whether the compiler issues diagnostic messages for argument mismatches between caller and callee (when compiled together). The default is /WARNINGS=NOARGUMENT_CHECKING.[NO]DECLARATIONS
Controls whether the compiler issues diagnostic messages for any untyped data item used in the program. DECLARATIONS acts as an external IMPLICIT NONE declaration. See the description of the IMPLICIT statement in the Compaq Fortran Language Reference Manual for information about the effects of IMPLICIT NONE.The default is NODECLARATIONS.
[NO]GENERAL
Controls whether the compiler issues I-level and W-level diagnostic messages. An I-level message indicates that a correct Compaq Fortran statement may have unexpected results or contains nonstandard syntax or source form. A W-level message indicates that the compiler has detected acceptable, but nonstandard, syntax or has performed some corrective action; in either case, unexpected results may occur.To suppress I-level and W-level diagnostic messages, specify the negative form of this qualifier (/WARNINGS=NOGENERAL).
The default is GENERAL.
[NO]GRANULARITY
Controls whether the compiler issues the compiler diagnostic message "Unable to generate code for requested granularity" to indicate when data access might not occur safely from different threads in a shared memory system (such as asynchronous write access from outside the user process). The default is /WARNINGS=GRANULARITY.For more information on data granularity and controlling the size of data that can be safely accessed from different threads, see Section 2.3.20.
[NO]TRUNCATED_SOURCE
Controls whether the compiler issues a warning diagnostic message (EXCCHASRC) when it reads a fixed-form source line with a statement field that exceeds the maximum column width. The maximum column width is column 72 or 132, depending whether /EXTEND_SOURCE qualifier was specified (or its OPTIONS statement qualifier).This option has no effect on truncation; lines that exceed the maximum column width are always truncated.
The default is /WARNINGS=NOTRUNCATED_SOURCE.
[NO]UNCALLED
Suppresses the compiler warning diagnostic message when a statement function is never called. The default is /WARNINGS=UNCALLED.[NO]UNINITIALIZED
Controls whether warning messages are issued when a variable is referenced before a value was assigned to it. Specify NOUNINITIALIZED to suppress such warning messages.The default, UNINITIALIZED, issues warning messages when a variable is referenced before a value was assigned to it.
[NO]UNUSED
Requests warning messages for a variable that is declared but never used. The default is /WARNINGS=NOUNUSED.[NO]USAGE
Specifying /WARNINGS=NOUSAGE suppresses informational messages about questionable programming practices and the use of intrinsic functions that use only two digits to represent years (such as 2000). The compiler allows such programming practices, although they are often an artifact of programming errors. For example, a continued character or Hollerith literal whose first part ends before the statement field and appears to end with trailing spaces.The default is USAGE.
ALL
Causes the compiler to print all I-level and W-level diagnostic messages, including warning messages for any unaligned data and untyped data items. Specifying ALL is equivalent to /WARNINGS and has the effect of specifying /WARNINGS=(ALIGNMENT, DECLARATIONS, GENERAL, UNCALLED, UNINITIALIZED ).NONE
Suppresses all I-level and W-level messages. Specifying /NOWARNINGS is equivalent to /WARNINGS=NONE.
For More Information:
Previous | Next | Contents | Index |