[lldb-dev] lldb build broken by clang update

Sean Callanan scallanan at apple.com
Thu Jan 16 10:53:14 PST 2014


That should do it.  Committed.

Sean

On Jan 16, 2014, at 9:59 AM, Sean Callanan <scallanan at apple.com> wrote:

> Thanks, Steve!  I’m looking into replacing that line with
> 
>         cxx_method_decl->addAttr(clang::UsedAttr::CreateImplicit(*m_clang_ast));
> 
> I’ll commit if that fixes it.
> 
> Sean
> 
> On Jan 16, 2014, at 8:20 AM, Steve Pucci <spucci at google.com> wrote:
> 
>> The lldb top-of-tree currently fails with an error adding a Clang attribute.  It appears to be a result of this Clang change yesterday (my emphasis):
>> 
>> 
>> 
>> * 5914278..: Aaron Ballman 2014-01-16 Distinguish between attributes explicitly written at the request of the user, and attributes implicitly generated to assist in bookkeeping by the compiler. This is done so by table generating a CreateImplicit method for each attribute.
>>   commit 591427889ead8b7c4c3211ef8cc55a9501eac064
>>   Author: Aaron Ballman <aaron at aaronballman.com>
>>   Date:   Thu Jan 16 13:03:14 2014 +0000
>> 
>>   Distinguish between attributes explicitly written at the request of the user, and attributes implicitly generated to assist in bookkeeping by the compiler. This is done so by table generating a CreateImplicit method for each attribute.
>> 
>>   Additionally, remove the optional nature of the spelling list index when creating attributes. This is supported by table generating a Spelling enumeration when the spellings for an attribute are distinct enough to warrant it.
>> 
>>   git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199378 91177308-0d34-0410-b5e6-96231b3b80d8
>> 
>> 
>> 
>> The error is attached.  I'm not sure how to get the new spelling list parameter (it's available as attribute_list.getAttributeSpellingListIndex() if the right attribute list is handy) or if one of the other candidates will work instead.
>> 
>> Thanks,
>>   Steve
>> 
>> /usr/local/google/home/spucci/lldb/work2/llvm/tools/lldb/source/Symbol/ClangASTType.cpp: In member function ‘clang::CXXMethodDecl* lldb_private::ClangASTType::AddMethodToCXXRecordType(const char*, const lldb_private::ClangASTType&, lldb::AccessType, bool, bool, bool, bool, bool, bool)’:
>> /usr/local/google/home/spucci/lldb/work2/llvm/tools/lldb/source/Symbol/ClangASTType.cpp:4748:79: error: no matching function for call to ‘clang::UsedAttr::UsedAttr(clang::SourceRange, clang::ASTContext&)’
>>          cxx_method_decl->addAttr(::new (*m_ast) UsedAttr(SourceRange(), *m_ast));
>>                                                                                ^
>> /usr/local/google/home/spucci/lldb/work2/llvm/tools/lldb/source/Symbol/ClangASTType.cpp:4748:79: note: candidates are:
>> In file included from /usr/local/google/home/spucci/lldb/work2/llvm/tools/clang/include/clang/AST/Attr.h:144:0,
>>                  from /usr/local/google/home/spucci/lldb/work2/llvm/tools/lldb/source/Symbol/ClangASTType.cpp:16:
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5187:3: note: clang::UsedAttr::UsedAttr(clang::SourceRange, clang::ASTContext&, unsigned int)
>>    UsedAttr(SourceRange R, ASTContext &Ctx
>>    ^
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5187:3: note:   candidate expects 3 arguments, 2 provided
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5178:7: note: constexpr clang::UsedAttr::UsedAttr(const clang::UsedAttr&)
>>  class UsedAttr : public InheritableAttr {
>>        ^
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5178:7: note:   candidate expects 1 argument, 2 provided
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5178:7: note: constexpr clang::UsedAttr::UsedAttr(clang::UsedAttr&&)
>> /usr/local/google/home/spucci/lldb/work2/build/tools/clang/include/clang/AST/Attrs.inc:5178:7: note:   candidate expects 1 argument, 2 provided
>> 
>> _______________________________________________
>> lldb-dev mailing list
>> lldb-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> 
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140116/359ac8ee/attachment.html>


More information about the lldb-dev mailing list