-q

Mark output from the linker demand load. This has the same functionality as the

 

+demand_load option. The default is +nodemand_load.

-Q

Mark output from the linker no demand load. This has the same functionality as the

 

+nodemand_load (the default).

+r8

+r8 changes 4-byte real constants, intrinsics, and user variables to 8-byte reals (rather

 

than the 4-byte default).

-R4

Set the precision of real and complex constants to single-precision. This has the same

 

functionality as the +real_constant=single option (the default).

-R8

Set the precision of real and complex constants to double-precision. This has the same

 

functionality as the +real_constant=double option. The default is

 

+real_constant=single.

The-R4and-R8options can be used to perform the same function.

+real_constant={singledouble} +real_constant=single treats all single-precision numerical constants as single-precision, and the +real_constant=double option treats all single-precision numerical constants as double-precision. The default is +real_constant=single.

 

The-R4and -R8options can be used to perform the same function.

 

-s

Strip symbol table information from linker output. This has the same functionality as the

 

+strip option. The default is +nostrip.

 

-S

Generate assembly listings for the specified source files. This has the same functionality

 

as the +asm option . The default is +noasm.

 

+[no]save

+save forces static storage for all local variables. This option provides a convenient

 

path for porting older Fortran programs that may depend on static allocation of memory.

 

(Variables in static storage retain their values between invocations of the program units

 

in which they are declared). The +save option causes all uninitialized variables to be

 

initialized to zero. The default is +nosave.

 

 

If you explicitly declare a variable with the AUTOMATIC attribute, the attribute overrides

 

the +saveoption.

 

 

The +save command-line option inhibits many of the optimizations performed by the

 

compiler. Generally, you will get better performance with the +Oinitcheck

option,

 

which also sets uninitialized variables to zero but is more selective than +save; see

 

“Using optimization options” (page 38).

 

+[no]shared

+noshared causes the output file from the linker to be marked unshared. The default,

 

+shared, is to mark the output file asshared .

 

 

The-noption performs the same function as +shared, and the -Noption performs

 

the same function as +noshared.

 

+[no]sharedlibF90

+sharedlibF90allows users to link the shared version of libF90or libF90_parallel

 

from /usr/lib. This resolves potential issues with the Fortran 90 driver trying to link

 

with the shared versions of libF90. The default is +nosharedlibF90.

 

+[no]sharedlibIO77

Link with the shared [archive] version of the libIO77 library. The default is to link with

 

the archive version of libIO77. This option is only supported on the Itanium® platform.

+[no]sharedlibU77

Link with the shared [archive] version of the libU77 library, when combined with +U77.

 

The default is to link with the archive version of libU77. This option is only supported

 

on the Itanium® platform.

 

+[no]signedzero

+[no]signedzero enables signed-zero support. This option forces a floating point

 

value of negative zero that appears as a formatted output list item to be represented

 

in the output record with a leading “-”. This option also changes the behavior of the

 

SIGNintrinsic. The default is +signedzero.

 

+source={fixedfreedefault} +source tells the compiler that source files are in either fixed or free form. The default

 

(+source=default) is free form for .f90source files and fixed form for .f

and

 

.Fsource files.

 

+[no]srcpos

Control the generation of source position information for the Caliper analysis tool.

 

When +srcpos is in effect (the default), the compiler generates this information.

When +nosrcpos is in effect, the compiler does not generate this information, and the compiler will instruct the linker to discard any of this information encountered in object files. This option is only supported on Itanium® platforms.

34 Compiling and linking