Sean and Greg,

I pushed the Objective-C lightweight generics feature into Clang last night. Is 
there anything else on your end that needs to be pushed?

        - Doug

> On Jul 7, 2015, at 3:14 AM, Pavel Labath <lab...@google.com> wrote:
> 
> 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

Reply via email to