CompilandDetails

Compiland information is split between symbols with a SymTagCompiland tag (low detail) and a SymTagCompilandDetails tag (high detail). SymTagCompilandDetails provides a wealth of information about the compiland that is not available with a SymTagCompiland symbol.

Properties

The following table shows the properties that are valid for this symbol type.

Property Data type Description
IDiaSymbol::get_backEndBuild DWORD Back-end build number of the compiler.
IDiaSymbol::get_backEndMajor DWORD Back-end major version number of the compiler.
IDiaSymbol::get_backEndMinor DWORD Back-end minor version number of the compiler.
IDiaSymbol::get_compilerName BSTR Name of the compiler that produced this compiland (only in DIA SDK V8.0 or later).
IDiaSymbol::get_editAndContinueEnabled BOOL TRUE if Edit and Continue were enabled at compilation.
IDiaSymbol::get_frontEndBuild DWORD Front-end build number of the compiler.
IDiaSymbol::get_frontEndMajor DWORD Front-end major version number of the compiler.
IDiaSymbol::get_frontEndMinor DWORD Front-end minor version number of the compiler.
IDiaSymbol::get_hasDebugInfo BOOL TRUE if this compiland has debug information (only in DIA SDK V8.0 or later).
IDiaSymbol::get_hasManagedCode BOOL TRUE if this compiland contains managed code (only in DIA SDK v8.0 or later).
IDiaSymbol::get_hasSecurityChecks BOOL TRUE if the compiland was compiled with the /GS (Buffer Security Check) compiler switch (only in DIA SDK V8.0 or later).
IDiaSymbol::get_isCVTCIL BOOL TRUE if compiland was converted from Common Intermediate Language (CIL) code to native code.
IDiaSymbol::get_isDataAligned BOOL TRUE if user-defined types (UDTs) have been aligned to some specified memory boundary (only in DIA SDK V8.0 or later).
IDiaSymbol::get_isHotpatchable BOOL TRUE if compiland was compiled with the /hotpatch (Create Hotpatchable Image) compiler switch (only in DIA SDK v8.0 or later).
IDiaSymbol::get_isLTCG BOOL TRUE if compiland was compiled with the /LTCG (Link-time Code Generation) compiler switch (only in DIA SDK V8.0 or later).
IDiaSymbol::get_isMSILNetmodule BOOL TRUE if compiland is a Microsoft Intermediate Language (MSIL) module (only in DIA SDK v8.0 or later).
IDiaSymbol::get_language DWORD Source code language.
IDiaSymbol::get_lexicalParent IDiaSymbol* Symbol for the compiland.
IDiaSymbol::get_lexicalParentId DWORD ID of the lexical parent symbol.
IDiaSymbol::get_platform DWORD Platform on which the compiland was compiled (one of the CV_CPU_TYPE_e Enumeration values).
IDiaSymbol::get_symIndexId DWORD Index ID of symbol.
IDiaSymbol::get_symTag DWORD Returns SymTagCompilandDetails (one of the SymTagEnum Enumeration values).

Remarks

Compilers often come in a form known as a two-pass compiler; in some compiler versions, each pass is handled by a separate program. These are known as front-end and back-end compilers, respectively, hence the symbol properties for back-end and front-end version numbers.

See also