Function (Debug Interface Access SDK)

Applies to: yesVisual Studio noVisual 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.

See also