Visible to Intel only — GUID: GUID-AF612C54-A05F-4AF9-8808-21A18000D7E0
Use Microsoft Visual Studio* Solution Explorer
Create a New Project
Perform Common Tasks with Microsoft Visual Studio*
Select a Version of the Intel® Fortran Compiler
Use Visual Studio* IDE Automation Objects
Specify Fortran File Extensions
Understand Solutions, Projects, and Configurations
Navigate Programmatic Components in a Fortran File
Specify Path, Library, and Include Directories
Set Compiler Options in the Microsoft Visual Studio* IDE Property Pages
Supported Build Macros
Use Manifests
Use Intel® Libraries with Microsoft Visual Studio*
Use Guided Auto Parallelism in Microsoft Visual Studio*
Use Code Coverage in Microsoft Visual Studio*
Use Profile Guided Optimization in Microsoft Visual Studio*
Use Source Editor Enhancements in Microsoft Visual Studio*
Create the Executable Program
Convert and Copy Projects
About Fortran Project Types
Optimization Reports
Dialog Box Help
Understand Project Types
Specify Project Types with ifort Command Options
Use Fortran Console Application Projects
Use Fortran Standard Graphics Application Projects
Use Fortran QuickWin Application Projects
Use Fortran Windowing Application Projects
Use Fortran Static Library Projects
Use Fortran Dynamic-Link Library Projects
Use the Console
Create Fortran Applications that Use Windows* Features
Options: General dialog box
Options: Compilers dialog box
Options: Advanced dialog box
Configure Analysis dialog box
Options: Optimization Reports dialog box
Options: Guided Auto Parallelism dialog box
Configure Analysis dialog box
Options: Profile Guided Optimization dialog box
Profile Guided Optimization dialog box
Options: Code Coverage dialog box
Code Coverage dialog box
Code Coverage Settings dialog box
Alphabetical Option List
General Rules for Compiler Options
What Appears in the Compiler Option Descriptions
Optimization Options
Code Generation Options
Interprocedural Optimization Options
Advanced Optimization Options
Profile Guided Optimization Options
Optimization Report Options
Offload Compilation, OpenMP*, and Parallel Processing Options
Floating-Point Options
Inlining Options
Output, Debug, and Precompiled Header Options
Preprocessor Options
Component Control Options
Language Options
Data Options
Compiler Diagnostic Options
Compatibility Options
Linking or Linker Options
Miscellaneous Options
Deprecated and Removed Compiler Options
Display Option Information
Alternate Compiler Options
arch
ax, Qax
fasynchronous-unwind-tables
fcf-protection, Qcf-protection
fexceptions
fomit-frame-pointer, Oy
guard
hotpatch
m, Qm
m32, m64, Qm32, Qm64
m80387
march
masm
mauto-arch, Qauto-arch
mbranches-within-32B-boundaries, Qbranches-within-32B-boundaries
mconditional-branch, Qconditional-branch
minstruction, Qinstruction
momit-leaf-frame-pointer
mstringop-inline-threshold, Qstringop-inline-threshold
mstringop-strategy, Qstringop-strategy
mtune, tune
Qpatchable-addresses
x, Qx
xHost, QxHost
ansi-alias, Qansi-alias
coarray, Qcoarray
coarray-config-file, Qcoarray-config-file
coarray-num-images, Qcoarray-num-images
complex-limited-range, Qcomplex-limited-range
fvec-peel-loops, Qvec-peel-loops
fvec-remainder-loops, Qvec-remainder-loops
fvec-with-mask, Qvec-with-mask
guide, Qguide
guide-data-trans, Qguide-data-trans
guide-file, Qguide-file
guide-file-append, Qguide-file-append
guide-opts, Qguide-opts
guide-par, Qguide-par
guide-vec, Qguide-vec
heap-arrays
pad, Qpad
qmkl, Qmkl
qmkl-ilp64, Qmkl-ilp64
qopt-args-in-regs, Qopt-args-in-regs
qopt-assume-safe-padding, Qopt-assume-safe-padding
qopt-block-factor, Qopt-block-factor
qopt-dynamic-align, Qopt-dynamic-align
qopt-for-throughput, Qopt-for-throughput
qopt-jump-tables, Qopt-jump-tables
qopt-malloc-options
qopt-matmul, Qopt-matmul
qopt-mem-layout-trans, Qopt-mem-layout-trans
qopt-multi-version-aggressive, Qopt-multi-version-aggressive
qopt-multiple-gather-scatter-by-shuffles, Qopt-multiple-gather-scatter-by-shuffles
qopt-prefetch, Qopt-prefetch
qopt-prefetch-distance, Qopt-prefetch-distance
qopt-prefetch-issue-excl-hint, Qopt-prefetch-issue-excl-hint
qopt-ra-region-strategy, Qopt-ra-region-strategy
qopt-streaming-stores, Qopt-streaming-stores
qopt-subscript-in-range, Qopt-subscript-in-range
qopt-zmm-usage, Qopt-zmm-usage
qoverride-limits, Qoverride-limits
reentrancy
safe-cray-ptr, Qsafe-cray-ptr
scalar-rep, Qscalar-rep
simd, Qsimd
unroll, Qunroll
unroll-aggressive, Qunroll-aggressive
vec, Qvec
vec-guard-write, Qvec-guard-write
vec-threshold, Qvec-threshold
vecabi, Qvecabi
finstrument-functions, Qinstrument-functions
fnsplit, Qfnsplit
p
prof-data-order, Qprof-data-order
prof-dir, Qprof-dir
prof-file, Qprof-file
prof-func-groups
prof-func-order, Qprof-func-order
prof-gen, Qprof-gen
prof-hotness-threshold, Qprof-hotness-threshold
prof-src-dir, Qprof-src-dir
prof-src-root, Qprof-src-root
prof-src-root-cwd, Qprof-src-root-cwd
prof-use, Qprof-use
prof-value-profiling, Qprof-value-profiling
Qcov-dir
Qcov-file
Qcov-gen
qopt-report, Qopt-report (ifort only)
qopt-report, Qopt-report (ifx only)
qopt-report-annotate, Qopt-report-annotate
qopt-report-annotate-position, Qopt-report-annotate-position
qopt-report-embed, Qopt-report-embed
qopt-report-file, Qopt-report-file
qopt-report-filter, Qopt-report-filter
qopt-report-format, Qopt-report-format
qopt-report-help, Qopt-report-help
qopt-report-names, Qopt-report-names
qopt-report-per-object, Qopt-report-per-object
qopt-report-phase, Qopt-report-phase
qopt-report-routine, Qopt-report-routine
tcollect, Qtcollect
tcollect-filter, Qtcollect-filter
device-math-lib
fmpc-privatize
fopenmp
fopenmp-declare-target-scalar-defaultmap, Qopenmp-declare-target-scalar-defaultmap
fopenmp-device-lib
fopenmp-target-buffers, Qopenmp-target-buffers
fopenmp-target-do-concurrent, Qopenmp-target-do-concurrent
fopenmp-targets, Qopenmp-targets
fsycl
fsycl-dead-args-optimization
fsycl-device-code-split
fsycl-device-lib
fsycl-instrument-device-code
fsycl-link-huge-device-code
nolibsycl
par-affinity, Qpar-affinity
par-num-threads, Qpar-num-threads
par-runtime-control, Qpar-runtime-control
par-schedule, Qpar-schedule
par-threshold, Qpar-threshold
parallel, Qparallel
parallel-source-info, Qparallel-source-info
qopenmp, Qopenmp
qopenmp-lib, Qopenmp-lib
qopenmp-link
qopenmp-simd, Qopenmp-simd
qopenmp-stubs, Qopenmp-stubs
qopenmp-threadprivate, Qopenmp-threadprivate
Qpar-adjust-stack
Xopenmp-target
fast-transcendentals, Qfast-transcendentals
fimf-absolute-error, Qimf-absolute-error
fimf-accuracy-bits, Qimf-accuracy-bits
fimf-arch-consistency, Qimf-arch-consistency
fimf-domain-exclusion, Qimf-domain-exclusion
fimf-force-dynamic-target, Qimf-force-dynamic-target
fimf-max-error, Qimf-max-error
fimf-precision, Qimf-precision
fimf-use-svml, Qimf-use-svml
fltconsistency
fma, Qfma
fp-model, fp
fp-port, Qfp-port
fp-speculation, Qfp-speculation
fp-stack-check, Qfp-stack-check
fpe
fpe-all
ftz, Qftz
Ge
mp1, Qprec
pc, Qpc
prec-div, Qprec-div
prec-sqrt, Qprec-sqrt
qsimd-honor-fp-model, Qsimd-honor-fp-model
qsimd-serialize-fp-reduction, Qsimd-serialize-fp-reduction
rcd, Qrcd
recursive
finline
finline-functions
finline-limit
inline
inline-factor, Qinline-factor
inline-forceinline, Qinline-forceinline
inline-level, Ob
inline-max-per-compile, Qinline-max-per-compile
inline-max-per-routine, Qinline-max-per-routine
inline-max-size, Qinline-max-size
inline-max-total-size, Qinline-max-total-size
inline-min-caller-growth, Qinline-min-caller-growth
inline-min-size, Qinline-min-size
Qinline-dllimport
bintext
c
debug (Linux* and macOS)
debug (Windows*)
debug-parameters
exe
Fa
FA
fcode-asm
Fd
feliminate-unused-debug-types, Qeliminate-unused-debug-types
fmerge-constants
fmerge-debug-strings
fsource-asm
ftrapuv, Qtrapuv
fverbose-asm
g
gdwarf
grecord-gcc-switches
gsplit-dwarf
list
list-line-len
list-page-len
map-opts, Qmap-opts
o
object
pdbfile
print-multi-lib
Quse-msasm-symbols
S
show
use-asm, Quse-asm
Zi, Z7
Zo
align
auto
auto-scalar, Qauto-scalar
convert
double-size
dyncom, Qdyncom
falign-functions, Qfnalign
falign-loops, Qalign-loops
falign-stack
fcommon
fkeep-static-consts, Qkeep-static-consts
fmath-errno
fminshared
fpconstant
fpic
fpie
fstack-protector
fstack-security-check
fvisibility
fzero-initialized-in-bss, Qzero-initialized-in-bss
Gs
GS
homeparams
init, Qinit
intconstant
integer-size
mcmodel
mdynamic-no-pic
no-bss-init, Qnobss-init
Qsfalign
real-size
save, Qsave
zero, Qzero
4Nportlib, 4Yportlib
Bdynamic
Bstatic
Bsymbolic
Bsymbolic-functions
cxxlib
dbglibs
dll
dynamic-linker
dynamiclib
extlnk
F (Windows*)
F (macOS)
fuse-ld
l
L
libs
link
map
MD
MDs
MT
nodefaultlibs
nofor-main
no-intel-lib, Qno-intel-lib
nostartfiles
nostdlib
pie
pthread
shared
shared-intel
shared-libgcc
static
static-intel
static-libgcc
static-libstdc++
staticlib
T
threads
v
Wa
winapp
Wl
Wp
Xlinker
Create Static Libraries
Create Shared Libraries on Linux and macOS
Use Shared Libraries on macOS
Call Library Routines
Comparison of Intel® Visual Fortran and Windows API Routines
Specify Consistent Library Types on Windows
Redistribute Libraries When Deploying Applications
Resolve References to Shared Libraries
Store Object Code in Static Libraries
Store Routines in Shareable Libraries
Use Windows API Routines
Math Libraries
Logical Devices
Physical Devices on Windows
Types of I/O Statements
Forms of I/O Statements
Assign Files to Logical Units
File Organization
Internal Files and Scratch Files
File Access and File Structure
File Records
Record Types
Record Length
Record Access
Record Transfer
Specify Default Pathnames and File Names
Open Files: OPEN Statement
Obtain File Information: INQUIRE Statement
Close Files: CLOSE Statement
Record I/O Statement Specifiers
File Sharing on Linux and macOS
Specify the Initial Record Position
Advancing and Nonadvancing Record I/O
Use USEROPEN to Pass Control To a Routine
Microsoft Fortran PowerStation Compatible Files
Use Asynchronous I/O
Mixed-Language Issues
Call Subprograms from the Main Program on Windows
Pass Arguments in Mixed-Language Programming
Stack Considerations in Calling Conventions on Windows
Naming Conventions
C/C++ Naming Conventions
Compile and Link Intel® Fortran and C Programs
Build Intel® Fortran and C Mixed-Language Programs on Windows
Understand Runtime Errors
Runtime Default Error Processing
Runtime Message Display and Format
Values Returned at Program Termination
Methods of Handling Errors
Locate Runtime Errors
List of Runtime Error Messages
Signal Handling on Linux* and macOS
Override the Default Runtime Library Exception Handler
Advanced Exception and Termination Handling
New Language Features
New Features for ifx
Language Reference Conventions
Program Elements and Source Forms
Data Types, Constants, and Variables
Expressions and Assignment Statements
Specification Statements
Dynamic Allocation
Execution Control
Program Units and Procedures
Intrinsic Procedures
Data Transfer I/O Statements
I/O Formatting
File Operation I/O Statements
Compilation Control Lines and Statements
Directive Enhanced Compilation
Scope and Association
Deleted and Obsolescent Language Features
Additional Language Features
Additional Character Sets
Data Representation Models
Library Modules and Runtime Library Routines
Summary of Language Extensions
A to Z Reference
Glossary
Main Program
Procedure Characteristics
Modules and Module Procedures
Intrinsic Modules
Block Data Program Units Overview
Functions, Subroutines, and Statement Functions
External Procedures
Internal Procedures
Argument Association in Procedures
Procedure Interfaces
Interoperability of Procedures and Procedure Interfaces
Procedure Pointers
Optional Arguments
Array Arguments
Pointer Arguments
Passed-Object Dummy Arguments
Assumed-Length Character Arguments
Character Constant and Hollerith Arguments
Alternate Return Arguments
Dummy Procedure Arguments
Coarray Dummy Arguments
References to Generic Procedures
References to Non-Fortran Procedures
Unit Specifier (UNIT=)
Format Specifier (FMT=)
Namelist Specifier (NML=)
Record Specifier (REC=)
I/O Status Specifier (IOSTAT=)
Branch Specifiers (END=, EOR=, ERR=)
Advance Specifier (ADVANCE=)
Asynchronous Specifier (ASYNCHRONOUS=)
Character Count Specifier (SIZE=)
ID Specifier (ID=)
POS Specifier (POS=)
I/O Message Specifier (IOMSG=)
INQUIRE: ACCESS Specifier
INQUIRE: ACTION Specifier
INQUIRE: ASYNCHRONOUS Specifier
INQUIRE: BINARY Specifier
INQUIRE: BLANK Specifier
INQUIRE: BLOCKSIZE Specifier
INQUIRE: BUFFERED Specifier
INQUIRE: CARRIAGECONTROL Specifier
INQUIRE: CONVERT Specifier
INQUIRE: DECIMAL Specifier
INQUIRE: DELIM Specifier
INQUIRE: DIRECT Specifier
INQUIRE: ENCODING Specifier
INQUIRE: EXIST Specifier
INQUIRE: FORM Specifier
INQUIRE: FORMATTED Specifier
INQUIRE: IOFOCUS Specifier
INQUIRE: MODE Specifier
INQUIRE: NAME Specifier
INQUIRE: NAMED Specifier
INQUIRE: NEXTREC Specifier
INQUIRE: NUMBER Specifier
INQUIRE: OPENED Specifier
INQUIRE: ORGANIZATION Specifier
INQUIRE: PAD Specifier
INQUIRE: PENDING Specifier
INQUIRE: POS Specifier
INQUIRE: POSITION Specifier
INQUIRE: READ Specifier
INQUIRE: READWRITE Specifier
INQUIRE: RECL Specifier
INQUIRE: RECORDTYPE Specifier
INQUIRE: ROUND Specifier
INQUIRE: SEQUENTIAL Specifier
INQUIRE: SHARE Specifier
INQUIRE: SIGN Specifier
INQUIRE: SIZE Specifier
INQUIRE: UNFORMATTED Specifier
INQUIRE: WRITE Specifier
OPEN: ACCESS Specifier
OPEN: ACTION Specifier
OPEN: ASSOCIATEVARIABLE Specifier
OPEN: ASYNCHRONOUS Specifier
OPEN: BLANK Specifier
OPEN: BLOCKSIZE Specifier
OPEN: BUFFERCOUNT Specifier
OPEN: BUFFERED Specifier
OPEN: CARRIAGECONTROL Specifier
OPEN: CONVERT Specifier
OPEN: DECIMAL Specifier
OPEN: DEFAULTFILE Specifier
OPEN: DELIM Specifier
OPEN: DISPOSE Specifier
OPEN: ENCODING Specifier
OPEN: FILE Specifier
OPEN: FORM Specifier
OPEN: IOFOCUS Specifier
OPEN: MAXREC Specifier
OPEN: MODE Specifier
OPEN: NAME Specifier
OPEN: NEWUNIT Specifier
OPEN: NOSHARED Specifier
OPEN: ORGANIZATION Specifier
OPEN: PAD Specifier
OPEN: POSITION Specifier
OPEN: READONLY Specifier
OPEN: RECL Specifier
OPEN: RECORDSIZE Specifier
OPEN: RECORDTYPE Specifier
OPEN: ROUND Specifier
OPEN: SHARE Specifier
OPEN: SHARED Specifier
OPEN: SIGN Specifier
OPEN: STATUS Specifier
OPEN: TITLE Specifier
OPEN: TYPE Specifier
OPEN: USEROPEN Specifier