I have made changes to lldb to follow the recent interface changes of clang. lldb now (at least) compiles, but I have very little knowledge of this part of code, so I would appreciate it if someone could review and/or fix this.
On 7 July 2015 at 11:11, Pavel Labath <lab...@google.com> wrote: > Author: labath > Date: Tue Jul 7 05:11:16 2015 > New Revision: 241573 > > URL: http://llvm.org/viewvc/llvm-project?rev=241573&view=rev > Log: > Fix build after recent clang interface changes > > Modified: > > lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp > lldb/trunk/source/Symbol/ClangASTContext.cpp > lldb/trunk/source/Symbol/ClangASTImporter.cpp > lldb/trunk/source/Symbol/ClangASTType.cpp > > Modified: > lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp > URL: > http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp?rev=241573&r1=241572&r2=241573&view=diff > ============================================================================== > --- > lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp > (original) > +++ > lldb/trunk/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp > Tue Jul 7 05:11:16 2015 > @@ -192,7 +192,8 @@ AppleObjCDeclVendor::GetDeclForISA(ObjCL > > ast_ctx->getTranslationUnitDecl(), > > clang::SourceLocation(), > > &identifier_info, > - > NULL); > + > nullptr, > + > nullptr); > > ClangASTMetadata meta_data; > meta_data.SetISAPtr(isa); > @@ -451,8 +452,9 @@ AppleObjCDeclVendor::FinishDecl(clang::O > return; > > FinishDecl(superclass_decl); > - > - interface_decl->setSuperClass(superclass_decl); > + clang::ASTContext *context = m_ast_ctx.getASTContext(); > + interface_decl->setSuperClass( > + > context->getTrivialTypeSourceInfo(context->getObjCInterfaceType(superclass_decl))); > }; > > auto instance_method_func = [log, interface_decl, this](const char > *name, const char *types) -> bool > > Modified: lldb/trunk/source/Symbol/ClangASTContext.cpp > URL: > http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/ClangASTContext.cpp?rev=241573&r1=241572&r2=241573&view=diff > ============================================================================== > --- lldb/trunk/source/Symbol/ClangASTContext.cpp (original) > +++ lldb/trunk/source/Symbol/ClangASTContext.cpp Tue Jul 7 05:11:16 2015 > @@ -1592,6 +1592,7 @@ ClangASTContext::CreateObjCClass > SourceLocation(), > > &ast->Idents.get(name), > nullptr, > + nullptr, > SourceLocation(), > /*isForwardDecl,*/ > isInternal); > > Modified: lldb/trunk/source/Symbol/ClangASTImporter.cpp > URL: > http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/ClangASTImporter.cpp?rev=241573&r1=241572&r2=241573&view=diff > ============================================================================== > --- lldb/trunk/source/Symbol/ClangASTImporter.cpp (original) > +++ lldb/trunk/source/Symbol/ClangASTImporter.cpp Tue Jul 7 05:11:16 2015 > @@ -568,7 +568,8 @@ ClangASTImporter::Minion::ImportDefiniti > if (!to_objc_interface->hasDefinition()) > to_objc_interface->startDefinition(); > > - to_objc_interface->setSuperClass(imported_from_superclass); > + to_objc_interface->setSuperClass( > + > m_source_ctx->getTrivialTypeSourceInfo(m_source_ctx->getObjCInterfaceType(imported_from_superclass))); > } > while (0); > } > > Modified: lldb/trunk/source/Symbol/ClangASTType.cpp > URL: > http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/ClangASTType.cpp?rev=241573&r1=241572&r2=241573&view=diff > ============================================================================== > --- lldb/trunk/source/Symbol/ClangASTType.cpp (original) > +++ lldb/trunk/source/Symbol/ClangASTType.cpp Tue Jul 7 05:11:16 2015 > @@ -5354,7 +5354,9 @@ ClangASTType::SetObjCSuperClass (const C > clang::ObjCInterfaceDecl *super_interface_decl = > superclass_clang_type.GetAsObjCInterfaceDecl (); > if (class_interface_decl && super_interface_decl) > { > - class_interface_decl->setSuperClass(super_interface_decl); > + > + class_interface_decl->setSuperClass( > + > m_ast->getTrivialTypeSourceInfo(m_ast->getObjCInterfaceType(super_interface_decl))); > return true; > } > } > > > _______________________________________________ > lldb-commits mailing list > lldb-commits@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits _______________________________________________ lldb-commits mailing list lldb-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits