Dear all,
I am not sure if this is reproducible, but I am experiencing some strange behavior while using LLDB ToT.
- The debugger does not automatically show the current snippet of source code when stopping at a breakpoint, I need to manually type “frame select 0” to get the code to appear, as in:
(lldb) next
(lldb) step
(lldb) frame select 0
frame #0: 0x0000000100000ec9 programmafoo(int&) + 25 at programma.cpp:4 1 int foo(int& x) 2 { 3 x = x + 1; -> 4 return (x-1); 5 } 6 int main() 7 { (lldb) next (lldb) frame select 0 frame #0: 0x0000000100000f0c programma
main + 44 at programma.cpp:10
7 {
8 int j = 0;
9 while (j < 1000)
→ 10 foo(j);
11 return 1;
12 }
(lldb)
- Every time I try to quit LLDB, it crashes. I have attached a log of the crash. It looks like that, when calling SBDebugger::Destroy (m_debugger); in Driver::MainLoop(), the SharedPtr to the Debugger has already been reset to NULL which segfaults LLDB, however some of the debug information is missing and setting a watchpoint on the SP does not show any spurious writes.
- The command “command script” and subcommands appear to have not been compiled in (however, other Python related commands are available)
I am not sure how reproducible this is, however I have tried a few times to download LLDB source code from scratch, but nothing changes. The most recent version that I am able to use successfully is r143676 + the fixes in ClangUserExpression.h from r143678.
Sincerely,
- Enrico Granata
lldb.crash (39.6 KB)