CompilandDetails
Note
This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
Compiland information is split between symbols with a SymTagCompiland
tag (low detail) and a SymTagCompilandDetails
tag (high detail). SymTagCompilandDetails
requires loading additional symbols. However, it 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 (UDT) 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.