These options are described in alphabetical order.
Enables the compiler to assume that the program adheres to the Fortran 95 Standard type aliasability rules.
For example, an object of type real cannot be accessed as an integer. For complete information on the rules for data types and data type constants, see "Data Types, Constants, and Variables" in the Language Reference.
The option directs the compiler to assume the following:
Arrays are not accessed out of arrays' bounds.
Pointers are not cast to non-pointer types and vice-versa.
References to objects of two different scalar types cannot alias. For example, an object of type integer cannot alias with an object of type real or an object of type real cannot alias with an object of type double precision.
If your program satisfies the above conditions, setting the -ansi_alias option will help the compiler optimize the program. However, if your program might not satisfy any of the above conditions, you must disable this option with -ansi_alias-, as it might cause the compiler to generate incorrect code.
Default: depends on whether -openmp is specified
Enables conditional compilation as defined by the OpenMP Fortran API. When "!$space" appears in free-form source or "!$spaces" appears in column 1 of fixed-form source, the rest of the line is accepted as a Fortran line.
If -openmp is specified, the default is -assume cc_omp; otherwise, the default is -assume nocc_omp.
Turns off all the -assume options.
Disables placement of zero-initialized variables in the BSS section.
By default, variables explicitly initialized with zeros are placed in the BSS section. By using this option, you can place any variables that are explicitly initialized with zeros in the DATA section if required.
There is no -bss_init option.
Default: -ccdefault default
Specifies the type of carriage control used for units 6 and *.
The choices for keyword are:
that the compiler is to use the default carriage-control setting. This
choice can be affected by the -vms
If -vms -ccdefault default is specified, carriage control defaults to fortran if the file is formatted, and the unit is connected to a terminal.
If -novms -ccdefault default is specified, carriage control defaults to list.
fortran Specifies normal Fortran interpretation of the first character.
list Specifies one line feed between records.
none Specifies no carriage-control processing.
Specifies settings that enhance debugging. To use this option, you must also specify the -g option.
The variable_locations keyword produces enhanced debug information useful in finding scalar local variables. It uses a feature of the Dwarf object module known as "location lists." This feature allows the run-time locations of local scalar variables to be specified more accurately; that is, whether, at a given position in the code, a variable value is found in memory or a machine register. Intel® Debugger, idb, is able to process location lists and display local variable values with greater accuracy at run-time.
Specifies that driver tool commands should be shown but not executed. See also -v.
Specifies a dynamic linker (file) instead of the default.
Default: Off (-fpic-)
Specifies that position-independent code should be generated. Required for building shared objects on Itanium-based systems.
Specifies full symbol preemption. Global symbol definitions as well as global symbol references get default (that is, preemptable) visibility unless explicitly specified otherwise.
See also Creating Shared Libraries.
Specifies that the compilation unit will be part of a main program component and will not be linked as part of a shareable object.
Since symbols defined in the main program cannot be preempted, this allows the compiler to treat symbols declared with default visibility as though they have protected visibility (i.e., fminshared implies fvisibility=protected).
Also, the compiler need not generate position-independent code for the main program. It can use absolute addressing, which may reduce the size of the global offset table (GOT) and may reduce memory traffic.
Specifies the default visibility for global symbols (-fvisibility=keyword) or specifies the visibility for symbols that are in a file (-fvisibility-keyword=file). (This second form overrides the first form).
The keyword specifies what the visibility is set to. Visibility can be set to any of the following:
default - Other components can reference the symbol, and the symbol definition can be overridden (preempted) by a definition of the same name in another component.
extern - The symbol is treated as though it is defined in another component. It also means that the symbol can be overridden by a definition of the same name in another component.
hidden - Other components cannot directly reference the symbol. However, its address might be passed to other components indirectly.
internal - The symbol cannot be referenced outside its defining component, either directly or indirectly.
protected - Other components can reference the symbol, but it cannot be overridden by a definition of the same name in another component.
The file is the pathname of a file containing the list of symbols whose visibility you want to set. The symbols are separated by whitespace (spaces, tabs, or newlines).
Generates symbolic debugging information and line numbers in the object file for use by debuggers.
Displays brief information about all the command-line options.
Produces enhanced source position information for inlined code. This leads to greater accuracy when reporting the source location of any instruction. It also provides enhanced debug information useful for function call traceback. The Intel® Debugger, idb, uses this information to show simulated call frames for inlined functions.
To use this option for debugging, you must also specify -g.
Default: -logo (startup banner is displayed)
Displays the startup banner.
This option can be placed anywhere on the command line.
The startup banner displays the following information:
ID: unique identification number for the compiler
x.y.z: version of the compiler
years: years for which the software is copyrighted
Specifies that the main program is not written in Fortran. For example, if the main program is written in C and calls an Intel Fortran subprogram, specify -nofor_main when compiling the program with the ifort command. Specifying -nofor_main prevents linking for_main.o into programs. This is a link-time switch.
If you omit -nofor_main, the main program must be a Fortran program.
Prevents the compiler from searching in /usr/include for files specified in an INCLUDE statement.
You can specify the -Idir option along with this option. This option does not affect cpp(1) behavior, and is not related to the Fortran 95 and 90 USE statement.
Enables analysis of OpenMP* applications. To use this option, you must have previously installed Thread Profiler, which is one of the Intel® Threading Tools. If this threading tool is not installed. this option has no effect. For more information about Thread Profiler (including how to obtain an evaluation copy), open the page associated with threading tools at www.intel.com/software/products.
Enables the changing of the variable and array memory layout.
The -pad option is effectively not different from -align when applied to structures and derived types. However, the scope of -pad is greater because it applies also to common blocks, derived types, sequence types, and structures.
Enables improved precision of floating-point divides. Has a slight impact on speed.
Enables changing of rounding mode for float-to-integer conversions, resulting in faster float-to-integer conversions.
Specifies that 64-bit size for long and pointer types should be assumed.
Specifies that standard startup files should be used when linking.
There is no -startfiles option.
Alternate syntax: -y and -syntax
Requests that only the syntax of the source file be checked. Code generation is suppressed.
Instructs the linker to read link commands from file.
Specifies that filename should be compiled as a Fortran source file. This option is used when you have a Fortran file with a nonstandard file extension (that is, not one of .F, .FOR, or .F90).
Enables analysis of threaded applications. To use this option, you must have previously installed Intel® Thread Checker, one of the Intel® Threading Tools. If this threading tool is not installed, this option has no effect. For more information about Intel Thread Checker (including how to obtain an evaluation copy), open the page associated with threading tools at www.intel.com/software/products.
Alternate syntax: -implicitnone
Specifies that the IMPLICIT NONE should be set by default. See also -warn [no]declarations.
Specifies that driver tool commands should be shown and executed. See also -dryrun.
Displays the compiler version information.
Prints the version strings of the Fortran command and the compiler.
Passes options (specified by option1, option2, and so forth) to the linker for processing.
Alternate syntax: -nostdinc
Removes standard directories from the include file search. This option prevents the compiler from searching the default path specified by the FPATH environment variable.
Passes value directly to the linker for processing.