DavidSpickett wrote: My extra logging resulted in this: ``` intern-state ^^^^^^^^ Thread::ShouldStop Begin ^^^^^^^^ intern-state Plan stack initial state: thread #1: tid = 0x47d2d: Active plan stack: Element 0: Base thread plan. Element 1: Single stepping past breakpoint site 11 at 0xf7fd1258
intern-state Step over breakpoint stopped for reason: trace. python3.8 Discarding thread plans for thread (tid = 0x47d2d, force 1) intern-state Plan Step over breakpoint trap should stop: 0. intern-state Completed step over breakpoint plan. intern-state Plan Step over breakpoint trap auto-continue: true. -- Command Output (stderr): -- python3.8: ../llvm-project/lldb/source/Target/Thread.cpp:898: bool lldb_private::Thread::ShouldStop(Event *): Assertion `i != 1 && "Cannot pop plan when there is only one plan (the base plan)"' failed. PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. #0 0xee160c64 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/lib/python3.8/site-packages/lldb/_lldb.cpython-38-arm-linux-gnueabihf.so+0xec1c64) #1 0xee15e688 llvm::sys::RunSignalHandlers() (/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/lib/python3.8/site-packages/lldb/_lldb.cpython-38-arm-linux-gnueabihf.so+0xebf688) #2 0xee1614f8 SignalHandler(int) (/home/tcwg-buildbot/worker/lldb-arm-ubuntu/build/lib/python3.8/site-packages/lldb/_lldb.cpython-38-arm-linux-gnueabihf.so+0xec24f8) #3 0xf7b21530 __default_sa_restorer /build/glibc-tftl1u/glibc-2.31/signal/../sysdeps/unix/sysv/linux/arm/sigrestorer.S:67:0 #4 0xf7b117e6 /build/glibc-tftl1u/glibc-2.31/csu/../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47:0 #5 0xf7b207fe raise /build/glibc-tftl1u/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:28:1 ``` With the assert going off [here](https://github.com/llvm/llvm-project/blob/0ed0b7458a528b7d2b2512e07eb2fed54a69ea3a/lldb/source/Target/Thread.cpp#L886). Which is the last place I'd expect it to be with all the `IsBasePlan` checks, but there might be a situation where `current_plan` is something unexpected. Maybe `current_plan` refers to something that has already been removed from the stack, I'm looking into it now. https://github.com/llvm/llvm-project/pull/74894 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits