[cfe-dev] bug in clang c++ parser

James Gregurich bayoubengal at mac.com
Thu Aug 2 15:55:07 PDT 2012



I just submitted an Xcode 4.5 bug report to apple:  #12020687.



Since it appears to be crashing in the parsing of C++ symbols in libc++'s abi support, I thought there might be some interest in it from the clang folks.  I'm not sure if this is the correct list to post this, if not let me know which list you want it on. Below is the crash log. If someone has interest in this project, let me know and I'll send it to you. It has a few boost dependencies that you'll have to supply yourself.


xcode version: Version 4.5 (4G125j)

Apple clang version 4.0 (tags/Apple/clang-421.10.53) (based on LLVM 3.1svn)




-James



Thread 31 Crashed:: <lldb session listener>
0   libc++abi.dylib               	0x00007fff8ca35b86 __cxxabiv1::__libcxxabi::__sub::is_function() const + 8
1   libc++abi.dylib               	0x00007fff8ca2e20e bool __cxxabiv1::__libcxxabi::__demangle_tree::__make<__cxxabiv1::__libcxxabi::__cv_qualifiers, unsigned int, __cxxabiv1::__libcxxabi::__node*>(unsigned int, __cxxabiv1::__libcxxabi::__node*) + 96
2   libc++abi.dylib               	0x00007fff8ca26505 __cxxabiv1::__libcxxabi::__demangle_tree::__parse_type(char const*, char const*, bool, bool) + 115
3   libc++abi.dylib               	0x00007fff8ca26677 __cxxabiv1::__libcxxabi::__demangle_tree::__parse_type(char const*, char const*, bool, bool) + 485
4   libc++abi.dylib               	0x00007fff8ca27f24 __cxxabiv1::__libcxxabi::__demangle_tree::__parse_operator_name(char const*, char const*, int*) + 1078
5   libc++abi.dylib               	0x00007fff8ca2b5da __cxxabiv1::__libcxxabi::__demangle_tree::__parse_nested_name(char const*, char const*) + 730
6   libc++abi.dylib               	0x00007fff8ca275a2 __cxxabiv1::__libcxxabi::__demangle_tree::__parse_name(char const*, char const*) + 62
7   libc++abi.dylib               	0x00007fff8ca271b0 __cxxabiv1::__libcxxabi::__demangle_tree::__parse_encoding(char const*, char const*) + 40
8   libc++abi.dylib               	0x00007fff8ca2b9fe __cxxabiv1::__libcxxabi::__demangle_tree::__parse() + 68
9   libc++abi.dylib               	0x00007fff8ca2ba8d __cxxabiv1::__libcxxabi::__demangle(char const*, char*, unsigned long) + 32
10  libc++abi.dylib               	0x00007fff8ca2bce6 __cxa_demangle + 112
11  com.apple.LLDB.framework      	0x0000000127902b1b lldb_private::Mangled::GetDemangledName() const + 127
12  com.apple.LLDB.framework      	0x00000001279f2f4d lldb_private::Symtab::InitNameIndexes() + 209
13  com.apple.LLDB.framework      	0x00000001279f368b lldb_private::Symtab::AppendSymbolIndexesWithName(lldb_private::ConstString const&, std::vector<unsigned int, std::allocator<unsigned int> >&) + 103
14  com.apple.LLDB.framework      	0x00000001279917c4 ObjectFileMachO::ParseSymtab(bool) + 9752
15  com.apple.LLDB.framework      	0x000000012798f128 ObjectFileMachO::GetSymtab() + 132
16  com.apple.LLDB.framework      	0x00000001279d32e3 SymbolFileSymtab::CalculateAbilities() + 43
17  com.apple.LLDB.framework      	0x00000001279d2319 lldb_private::SymbolFile::GetAbilities() + 29
18  com.apple.LLDB.framework      	0x00000001279f0ba4 lldb_private::SymbolFile::FindPlugin(lldb_private::ObjectFile*) + 76
19  com.apple.LLDB.framework      	0x00000001279f0e6c lldb_private::SymbolVendor::AddSymbolFileRepresentation(std::tr1::shared_ptr<lldb_private::ObjectFile> const&) + 84
20  com.apple.LLDB.framework      	0x00000001279d47be SymbolVendorMacOSX::CreateInstance(std::tr1::shared_ptr<lldb_private::Module> const&) + 2112
21  com.apple.LLDB.framework      	0x00000001279f0d2b lldb_private::SymbolVendor::FindPlugin(std::tr1::shared_ptr<lldb_private::Module> const&) + 51
22  com.apple.LLDB.framework      	0x0000000127903f88 lldb_private::Module::GetSymbolVendor(bool) + 110
23  com.apple.LLDB.framework      	0x0000000127903ebe lldb_private::Module::GetNumCompileUnits() + 66
24  com.apple.LLDB.framework      	0x00000001278aeacd lldb_private::BreakpointResolverFileLine::SearchCallback(lldb_private::SearchFilter&, lldb_private::SymbolContext&, lldb_private::Address*, bool) + 121
25  com.apple.LLDB.framework      	0x0000000127914a34 lldb_private::SearchFilter::DoModuleIteration(lldb_private::SymbolContext const&, lldb_private::Searcher&) + 346
26  com.apple.LLDB.framework      	0x00000001279148a5 lldb_private::SearchFilter::Search(lldb_private::Searcher&) + 127
27  com.apple.LLDB.framework      	0x0000000127a192f4 lldb_private::Target::CreateBreakpoint(std::tr1::shared_ptr<lldb_private::SearchFilter>&, std::tr1::shared_ptr<lldb_private::BreakpointResolver>&, bool) + 318
28  com.apple.LLDB.framework      	0x0000000127a19413 lldb_private::Target::CreateBreakpoint(lldb_private::FileSpecList const*, lldb_private::FileSpec const&, unsigned int, bool, lldb_private::LazyBool, bool) + 147
29  com.apple.LLDB.framework      	0x0000000126b39995 lldb::SBTarget::BreakpointCreateByLocation(lldb::SBFileSpec const&, unsigned int) + 203
30  com.apple.LLDB.framework      	0x0000000126b39898 lldb::SBTarget::BreakpointCreateByLocation(char const*, unsigned int) + 58
31  com.apple.dt.dbg.DebuggerLLDB 	0x0000000112b81c79 -[DBGLLDBSession _createBreakpointFromFileBreakpoint:] + 150
32  com.apple.dt.dbg.DebuggerLLDB 	0x0000000112b8183d -[DBGLLDBSession createBreakpoint:] + 243
33  com.apple.dt.dbg.DebuggerFoundation	0x000000011346d41a -[DBGDebugSession _createBreakpointIfNeccessary:] + 77
34  com.apple.dt.dbg.DebuggerFoundation	0x000000011346da21 -[DBGDebugSession _handleBreakpointActivationChanged] + 191
35  com.apple.dt.dbg.DebuggerLLDB 	0x0000000112b7e76b DBGLLDBSessionThread(void*) + 1778
36  com.apple.LLDB.framework      	0x000000012795f55c ThreadCreateTrampoline(void*) + 91
37  libsystem_c.dylib             	0x00007fff8db97782 _pthread_start + 327
38  libsystem_c.dylib             	0x00007fff8db841c1 thread_start + 13


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20120802/3091ca83/attachment.html>


More information about the cfe-dev mailing list