[cfe-dev] bug in clang c++ parser
Howard Hinnant
hhinnant at apple.com
Fri Aug 3 15:03:21 PDT 2012
Thanks, Fix committed revision 161267.
Howard
On Aug 2, 2012, at 6:55 PM, James Gregurich <bayoubengal at mac.com> wrote:
>
>
> 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
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
More information about the cfe-dev
mailing list