diff options
Diffstat (limited to 'lldb/source')
-rw-r--r-- | lldb/source/DataFormatters/Cocoa.cpp | 3 | ||||
-rw-r--r-- | lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp | 2 | ||||
-rw-r--r-- | lldb/source/Symbol/ClangASTContext.cpp | 6 |
3 files changed, 9 insertions, 2 deletions
diff --git a/lldb/source/DataFormatters/Cocoa.cpp b/lldb/source/DataFormatters/Cocoa.cpp index 2ae7ee09b0d..afc7fe21166 100644 --- a/lldb/source/DataFormatters/Cocoa.cpp +++ b/lldb/source/DataFormatters/Cocoa.cpp @@ -55,8 +55,9 @@ lldb_private::formatters::NSBundleSummaryProvider (ValueObject& valobj, Stream& if (!strcmp(class_name,"NSBundle")) { uint64_t offset = 5 * ptr_size; - ClangASTType type(valobj.GetClangAST(),valobj.GetClangType()); + ClangASTType type(valobj.GetClangAST(),ClangASTContext::GetBuiltInType_objc_id(valobj.GetClangAST())); ValueObjectSP text(valobj.GetSyntheticChildAtOffset(offset, type, true)); + valobj_addr = text->GetValueAsUnsigned(0); StreamString summary_stream; bool was_nsstring_ok = NSStringSummaryProvider(*text.get(), summary_stream); if (was_nsstring_ok && summary_stream.GetSize() > 0) diff --git a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp index f116bc79ec1..752e526a449 100644 --- a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp +++ b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp @@ -1508,7 +1508,7 @@ public: // tagged pointers can represent a class that has a superclass, but since that information is not // stored in the object itself, we would have to query the runtime to discover the hierarchy // for the time being, we skip this step in the interest of static discovery - return ObjCLanguageRuntime::ClassDescriptorSP(new ObjCLanguageRuntime::ClassDescriptor_Invalid()); + return ObjCLanguageRuntime::ClassDescriptorSP(); } virtual bool diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp index 69e22c3177a..6eed9fc42cc 100644 --- a/lldb/source/Symbol/ClangASTContext.cpp +++ b/lldb/source/Symbol/ClangASTContext.cpp @@ -944,6 +944,12 @@ ClangASTContext::GetBuiltInType_objc_id() return getASTContext()->getObjCIdType().getAsOpaquePtr(); } +lldb::clang_type_t +ClangASTContext::GetBuiltInType_objc_id(clang::ASTContext *ast) +{ + return ast->getObjCIdType().getAsOpaquePtr(); +} + clang_type_t ClangASTContext::GetBuiltInType_objc_Class() { |