debug (Windows* OS)

Enables or disables generation of debugging information.

IDE Equivalent

Windows: Debug > Enable Parallel Debug Checks (/debug:parallel)

Debug > Enable Expanded Line Number Information (/debug:expr-source-pos)

Linux: None

Mac OS X: None

Architectures

IA-32, Intel® 64, IA-64 architectures

Syntax

Linux and Mac OS X:

None

Windows:

/debug[:keyword]

Arguments

keyword

Is the type of debugging information to be generated. Possible values are:

none

Generates no symbol table information.

full or all

Generates complete debugging information.

minimal

Generates line numbers and minimal debugging information.

partial

Deprecated. Generates global symbol table information needed for linking.

[no]expr-source-pos

Determines whether the compiler generates source position information at the expression level of granularity.

[no]parallel
(i32, i64em)

Determines whether the compiler generates parallel debug code instrumentations useful for thread data sharing and reentrant call detection. For shared data and reentrancy detection, option /Qopenmp must be set.

For information on the non-default settings for these keywords, see the Description section.

Default

/debug:none

This is the default on the command line and for a release configuration in the IDE.

/debug:full

This is the default for a debug configuration in the IDE.

Description

This option enables or disables generation of debugging information. It is passed to the linker.

Note that if you turn debugging on, optimization is turned off.

If conflicting keywords are used in combination, the last one specified on the command line has precedence.

Option

Description

/debug:none

Disables generation of debugging information.

/debug:full or /debug:all

Generates complete debugging information. It produces symbol table information needed for full symbolic debugging of unoptimized code and global symbol information needed for linking. It is the same as specifying /debug with no keyword.

/debug:minimal

Generates line number information for debugging. It produces global symbol information needed for linking, but not local symbol table information needed for debugging.

/debug:partial

Generates global symbol table information needed for linking, but not local symbol table information needed for debugging. This option is deprecated and is not available in the IDE.

/debug:expr-source-pos

Generates source position information at the statement level of granularity.

/debug:parallel

Generates parallel debug code instrumentations needed for the thread data sharing and reentrant call detection of the Intel® Parallel Debugger Extension. This option is only available on IA-32 and Intel® 64 architectures.

Alternate Options

For /debug:minimal

Linux and Mac OS X: None
Windows: /Zd (this is a deprecated option)

For /debug:full or
/debug

Linux and Mac OS X: None
Windows: /Zi, /Z7