rocallahan wrote: > My notion was that when you push a plan that has an intention to run in a > direction, if the plan above it on the stack was going in the opposite > direction, it has to be popped.
That's in the current code in this PR but I agree that was the wrong direction. My experimental [reverse-continue-thread-plan](https://github.com/rocallahan/llvm-project/tree/reverse-continue-thread-plan) branch doesn't do this. > After all, you might be doing a backwards direction next, but hit a > breakpoint while doing that. You then want to step FORWARDS from that > breakpoint to check something out. Right. > Then if stepping backwards and forwards were working like lldb stepping > currently works, you'd expect "continue" to return control to the backwards > next to finish out the operation. There's a UX issue here: in the scenario you describe (hit breakpoint during reverse-next, step forward, continue) *should* the reverse-step be resumed? Personally I think not. I think it's very confusing if "continue" ever causes reverse execution (and likewise if "reverse-continue" ever causes forward execution). So in this case I would say "reverse-continue" should resume the reverse-next but "continue" should pop it. This is helpful discussion but it doesn't directly address my question in https://github.com/llvm/llvm-project/pull/112079#issuecomment-2468857787. Can we focus on that? https://github.com/llvm/llvm-project/pull/112079 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits