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.