With these fixes to source/Expression, I'm now getting this error
when building with gcc 4.5.1:

make[4]: Entering directory 
`/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression'
llvm[4]: Compiling ClangASTSource.cpp for Debug+Asserts build
In file included from 
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/utility:71:0,
                 from 
/home/dawn/dev/llvm_svnRlldb/include/llvm/ADT/StringRef.h:15,
                 from 
/home/dawn/dev/llvm_svnRlldb/include/llvm/ADT/StringMap.h:17,
                 from 
/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression/../../../clang/include/clang/Basic/IdentifierTable.h:21,
                 from 
/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression/../../../clang/include/clang/AST/ASTContext.h:18,
                 from ClangASTSource.cpp:11:
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_pair.h:
 In instantiation of 
'std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>, 
lldb_private::ClangNamespaceDecl>':
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_tree.h:383:2:
   instantiated from 'void std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, 
_Alloc>::_M_destroy_node(std::_Rb_tree_node<_Val>*) [with _Key = const 
clang::NamespaceDecl*, _Val = std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > >, _KeyOfValue = 
std::_Select1st<std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >, _Compare = std::less<const 
clang::NamespaceDecl*>, _Alloc = std::allocator<std::pair<const 
clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >, std::_Rb_tree_node<_Val>* = 
std::_Rb_tree_no!
 de<std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >*]'
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_tree.h:990:4:
   instantiated from 'void std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, 
_Alloc>::_M_erase(std::_Rb_tree_node<_Val>*) [with _Key = const 
clang::NamespaceDecl*, _Val = std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > >, _KeyOfValue = 
std::_Select1st<std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >, _Compare = std::less<const 
clang::NamespaceDecl*>, _Alloc = std::allocator<std::pair<const 
clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >, std::_Rb_tree_node<_Val>* = 
std::_Rb_tree_node<std:!
 :pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >*]'
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_tree.h:614:9:
   instantiated from 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, 
_Alloc>::~_Rb_tree() [with _Key = const clang::NamespaceDecl*, _Val = 
std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > >, _KeyOfValue = 
std::_Select1st<std::pair<const clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >, _Compare = std::less<const 
clang::NamespaceDecl*>, _Alloc = std::allocator<std::pair<const 
clang::NamespaceDecl* const, 
lldb_private::SharingPtr<std::vector<std::pair<lldb_private::IntrusiveSharingPtr<lldb_private::Module>,
 lldb_private::ClangNamespaceDecl> > > > >]'
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_map.h:87:5:
   instantiated from here
/usr/lib/gcc/i686-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_pair.h:77:11:
 error: 'std::pair<_T1, _T2>::second' has incomplete type
/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression/../../include/lldb/lldb-forward.h:45:9:
 error: forward declaration of 'struct lldb_private::ClangNamespaceDecl'
/bin/rm: cannot remove 
`/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression/Debug+Asserts/ClangASTSource.d.tmp':
 No such file or directory
make[4]: *** 
[/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression/Debug+Asserts/ClangASTSource.o]
 Error 1
make[4]: Leaving directory 
`/home/dawn/dev/llvm_svnRlldb/tools/lldb/source/Expression'
make[3]: *** [all] Error 1
make[3]: Leaving directory `/home/dawn/dev/llvm_svnRlldb/tools/lldb/source'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/home/dawn/dev/llvm_svnRlldb/tools/lldb'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/dawn/dev/llvm_svnRlldb/tools'
make: *** [all] Error 1

I guess clang didn't catch this?

-Dawn

On Fri, Oct 14, 2011 at 12:05:17PM +0400, Zajac wrote:
> Greg, it is a regular ivar. There is no even property defined for this. It's 
> declared in @interface section.
> How can I help you to localize the issue? Today I'll try to reproduce the 
> problem with latest source and let you know if it still happen.
> 
> 14.10.2011, ? 10:03, Greg Clayton ???????(?):
> 
> > Until recently we didn't get any information about properties in the debug 
> > info, so we were unable to show those at all. Is the ivar you are missing a 
> > property? Normal ivars that are declared in the header file (not in the 
> > nameless category in the .m file) should show up as expected. 
> > 
> > Newer clang compilers now emit enough debug information for us to support 
> > properties but we haven't gotten the support added for those yet.
> > 
> > If you just have a normal ivar, then be sure to check in your "object" is 
> > valid.
> > 
> > On Oct 13, 2011, at 8:09 PM, Andrey Zaytsev wrote:
> > 
> >> Hello everyone. Maybe it's fixed already but here is what i found:
> >> I have some objective C object with ivars. But expression "object->myIVar" 
> >> can't be evaluated. It says "MyObject doesn't a member named 'myIVar'; did 
> >> you mean myIVar?".
> >> Thank you for consideration.
> >> 
> >> lldb-76
> >> Xcode 4.2
> >> OSX 10.6 
> >> _______________________________________________
> >> lldb-dev mailing list
> >> [email protected]
> >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> > 
> 
> 
> _______________________________________________
> lldb-dev mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to