Constructor DebugPointerType
DebugPointerType(IDebugType<ITypeRef, DIType>, IDIBuilder, uint, string?, uint)
Initializes a new instance of the DebugPointerType class.
public DebugPointerType(IDebugType<ITypeRef, DIType> debugElementType, IDIBuilder diBuilder, uint addressSpace = 0, string? name = null, uint alignment = 0)
Parameters
debugElementTypeIDebugType<ITypeRef, DIType>Debug type of the pointee
diBuilderIDIBuilderDebug information builder to use in creating this instance
addressSpaceuintTarget address space for the pointer [Default: 0]
namestringName of the type [Default: null]
alignmentuintAlignment on pointer
DebugPointerType(ITypeRef, IDIBuilder, DIType?, uint, string?, uint)
Initializes a new instance of the DebugPointerType class.
public DebugPointerType(ITypeRef llvmElementType, IDIBuilder diBuilder, DIType? elementType, uint addressSpace = 0, string? name = null, uint alignment = 0)
Parameters
llvmElementTypeITypeRefNative type of the pointee
diBuilderIDIBuilderDebug information builder to use in creating this instance
elementTypeDITypeDebug type of the pointee
addressSpaceuintTarget address space for the pointer [Default: 0]
namestringName of the type [Default: null]
alignmentuintAlignment of pointer
DebugPointerType(IPointerType, IDIBuilder, DIType?, string?, uint)
Initializes a new instance of the DebugPointerType class to bind with an existing pointer type
public DebugPointerType(IPointerType llvmPtrType, IDIBuilder diBuilder, DIType? elementType, string? name = null, uint alignment = 0)
Parameters
llvmPtrTypeIPointerTypeNative type of the pointer
diBuilderIDIBuilderDebug information builder to use in creating this instance
elementTypeDITypeDebug type of the pointee
namestringName of the type [Default: null]
alignmentuintAlignment for pointer type
Remarks
Due to the move to opaque pointers in LLVM, this form has a null ElementType property as the elements the pointer refers to are unknown.
DebugPointerType(IPointerType, DIType)
Initializes a new instance of the DebugPointerType class to bind with an existing pointer type
public DebugPointerType(IPointerType llvmPtrType, DIType debugType)
Parameters
llvmPtrTypeIPointerTypeNative type of the pointer
debugTypeDITypeDebug type for the pointer
Remarks
This constructor is typically used when building typedefs to a basic type to provide namespace scoping for the typedef for languages that support such a concept. This is needed because basic types don't have any namespace information in the LLVM Debug information (they are implicitly in the global namespace)