mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-02 07:17:36 +00:00
PR14759: Debug info support for C++ member pointers.
This works fine with GDB for member variable pointers, but GDB's support for member function pointers seems to be quite unrelated to DW_TAG_ptr_to_member_type. (see GDB bug 14998 for details) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171698 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -126,6 +126,11 @@ namespace llvm {
|
||||
uint64_t AlignInBits = 0,
|
||||
StringRef Name = StringRef());
|
||||
|
||||
/// \brief Create debugging information entry for a pointer to member.
|
||||
/// @param PointeeTy Type pointed to by this pointer.
|
||||
/// @param Class Type for which this pointer points to members of.
|
||||
DIType createMemberPointerType(DIType PointeeTy, DIType Class);
|
||||
|
||||
/// createReferenceType - Create debugging information entry for a c++
|
||||
/// style reference or rvalue reference type.
|
||||
DIType createReferenceType(unsigned Tag, DIType RTy);
|
||||
|
||||
@@ -354,6 +354,11 @@ namespace llvm {
|
||||
/// associated with one.
|
||||
MDNode *getObjCProperty() const;
|
||||
|
||||
DIType getClassType() const {
|
||||
assert(getTag() == dwarf::DW_TAG_ptr_to_member_type);
|
||||
return getFieldAs<DIType>(10);
|
||||
}
|
||||
|
||||
StringRef getObjCPropertyName() const {
|
||||
if (getVersion() > LLVMDebugVersion11)
|
||||
return StringRef();
|
||||
|
||||
Reference in New Issue
Block a user