[Lldb-commits] [lldb] [lldb-dap] Handle stack frames without a module (PR #136777)
Ely Ronnen via lldb-commits
lldb-commits at lists.llvm.org
Wed Apr 23 23:58:33 PDT 2025
================
@@ -783,6 +783,16 @@ llvm::json::Value CreateStackFrame(lldb::SBFrame &frame,
// Line numbers are 1-based.
object.try_emplace("line", inst_line + 1);
object.try_emplace("column", 1);
+ } else {
+ // No valid line entry or symbol
+ llvm::json::Object source;
+ EmplaceSafeString(source, "name", frame_name);
+ source.try_emplace("sourceReference", MakeDAPFrameID(frame));
+ EmplaceSafeString(source, "presentationHint", "deemphasize");
+ object.try_emplace("source", std::move(source));
+
+ object.try_emplace("line", 1);
+ object.try_emplace("column", 1);
----------------
eronnen wrote:
it still needs to be 1, this way it will be possible to debug the code in the IDE:
[Screencast From 2025-04-24 08-48-53.webm](https://github.com/user-attachments/assets/c05692c6-a966-4db2-874b-0815a6563427)
The only annoying thing is that each step removes the previous assembly lines, but I couldn't think of a straightforward way to tackle it because the frame changes too in every step
https://github.com/llvm/llvm-project/pull/136777
More information about the lldb-commits
mailing list