Skip to content

[lldb-dap] wrong breakpoint verified status #161329

@nd-work

Description

@nd-work

To reproduce, debug the following program with lldb-dap from Xcode 26.0.1 and one breakpoint:

#include <iostream>

int main() {
  std::cout << "ok\n";
  std::cout << "ok\n"; // break
  std::cout << "ok\n";
}

Lldb dap first replies that the breakpoint is verified:

1759217371.887020111 <-- 
Content-Length: 294
{
  "body": {
    "breakpoints": [
      {
        "column": 13,
        "id": 1,
        "instructionReference": "0x100000CF8",
        "line": 5,
        "source": {
          "name": "main.cpp",
          "path": "/Users/dmitry.neverov/w/a/CLionProjects/playgroundCpp/main.cpp"
        },
        "verified": true
      }
    ]
  },
  "command": "setBreakpoints",
  "request_seq": 3,
  "seq": 0,
  "success": true,
  "type": "response"
}

and then later sends an event where the breakpoint is not verified:

1759217371.916330099 <-- 
Content-Length: 177

{
  "body": {
    "breakpoint": {
      "column": 13,
      "id": 1,
      "instructionReference": "0xFFFFFFFFFFFFFFFF",
      "line": 5,
      "verified": false
    },
    "reason": "changed"
  },
  "event": "breakpoint",
  "seq": 0,
  "type": "event"
}

The program successfully stops at the breakpoint, so the verified flag in the breakpoint is wrong.

lldb_dap.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions