Function (Debug Interface Access SDK)
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. 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
Each function is identified by a SymTagFunction
symbol.
Properties
The following table shows the properties that are valid for this symbol type.
Property | Data type | Description |
---|---|---|
IDiaSymbol::get_access | DWORD |
One of the values of the CV_access_e Enumeration, if the function is a member function. |
IDiaSymbol::get_addressOffset | DWORD |
Offset part of location; for details, see the LocationType Enumeration. |
IDiaSymbol::get_addressSection | DWORD |
Section part of location; for details, see the LocationType Enumeration. |
IDiaSymbol::get_classParent | IDiaSymbol* |
Symbol for the class, if the function is a member function. |
IDiaSymbol::get_classParentId | DWORD |
ID of the class parent symbol. |
IDiaSymbol::get_constType | BOOL |
TRUE if the function is marked as a constant. |
IDiaSymbol::get_customCallingConvention | BOOL |
TRUE if the function uses a custom calling convention (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_farReturn | BOOL |
TRUE if the function performs a far return (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasAlloca | BOOL |
TRUE if the function uses allocated memory function (only uinnder DIA SDK V8.0 or later). |
IDiaSymbol::get_hasEH | BOOL |
TRUE if the function contains C++-style exception handling (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasEHa | BOOL |
TRUE if the function contains asynchronous exception handling (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasInlAsm | BOOL |
TRUE if the function contains inline assembly (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasLongJump | BOOL |
TRUE if the function contains a longjmp call (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasSecurityChecks | BOOL |
TRUE if the function contains security checks (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasSEH | BOOL |
TRUE if the function contains Win32-style structured exception handling (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_hasSetJump | BOOL |
TRUE if the function contains a setjmp call (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_interruptReturn | BOOL |
TRUE if the function has a return from interrupt (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_intro | BOOL |
TRUE if a function is intro virtual. |
IDiaSymbol::get_InlSpec | BOOL |
TRUE if the function has been marked with one of the inline, __inline, __forceinline attributes. |
IDiaSymbol::get_isNaked | BOOL |
TRUE if the function is marked with the naked attribute (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_isStatic | BOOL |
TRUE if the function is static (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_length | ULONGLONG |
Number of bytes of function code, starting from location. |
IDiaSymbol::get_lexicalParent | IDiaSymbol* |
Symbol of the enclosing compiland. |
IDiaSymbol::get_lexicalParentId | DWORD |
ID of the lexical parent symbol. |
IDiaSymbol::get_locationType | DWORD |
Functions can have static or metadata locations; for details, see Symbol Locations. |
IDiaSymbol::get_name | BSTR |
Name of the function. |
IDiaSymbol::get_noInline | BOOL |
TRUE if the function is not an inline function (only n DIA SDK V8.0 or later). |
IDiaSymbol::get_notReached | BOOL |
TRUE if the function is not reachable (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_noReturn | BOOL |
TRUE if the function does not return a value (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_noStackOrdering | BOOL |
TRUE if the function was compiled with buffer security checks but no stack ordering could be done. |
IDiaSymbol::get_optimizedCodeDebugInfo | BOOL |
TRUE if the code has debug information for optimized code (only in DIA SDK V8.0 or later). |
IDiaSymbol::get_pure | BOOL |
TRUE if function is pure virtual. |
IDiaSymbol::get_relativeVirtualAddress | DWORD |
Relative position of this function within its module. |
IDiaSymbol::get_symIndexId | DWORD |
Index ID of symbol. |
IDiaSymbol::get_symTag | DWORD |
Returns SymTagFunction (one of the SymTagEnum Enumeration values). |
IDiaSymbol::get_token | DWORD |
Metadata token for the function. |
IDiaSymbol::get_type | IDiaSymbol* |
Symbol for the function signature. |
IDiaSymbol::get_typeId | DWORD |
ID of the type symbol. |
IDiaSymbol::get_unalignedType | BOOL |
TRUE if the function is unaligned. |
IDiaSymbol::get_undecoratedName | BSTR |
The undecorated form of the function name (only in DIA SDK v8.0 or later) |
IDiaSymbol::get_undecoratedNameEx | BSTR |
Part or all of the undecorated form of the function name (only in DIA SDK v8.0 or later). |
IDiaSymbol::get_virtual | BOOL |
TRUE if a virtual function. |
IDiaSymbol::get_virtualAddress | ULONGLONG |
Position of this function within the executable image. |
IDiaSymbol::get_virtualBaseOffset | DWORD |
If a virtual function, then the offset in the virtual function table. |
IDiaSymbol::get_volatileType | BOOL |
TRUE if the function is marked as volatile. |