[Bug 28860] New: LLDB-MI: no breakpoint-modified notification when a breakpoint is hit

Bug ID 28860
Summary LLDB-MI: no breakpoint-modified notification when a breakpoint is hit
Product lldb
Version unspecified
Hardware PC
OS Linux
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter aetf@unlimitedcodeworks.xyz
CC llvm-bugs@lists.llvm.org
Classification Unclassified

When a breakpoint is hit, a breakpoint-modified notification should be output
to update the hit time field.

A test case:

$ cat main.cpp
#include <iostream>
using namespace std;

int main()
{
    for (int i = 0; i!= 10; i++)
        cout << i << endl;
    return 0;
}
$ g++ -g -o main main.cpp
$ lldb-mi main
(gdb)
-file-exec-and-symbols "main"
^done
(gdb)
-break-insert -f main.cpp:7
^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x000000000040080b",func="main",file="main.cpp",fullname="/tmp/workspace/main.cpp",line="7",pending=["main.cpp:7"],times="0",original-location="main.cpp:7"}
(gdb)
=breakpoint-modified,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x000000000040080b",func="main",file="main.cpp",fullname="/tmp/workspace/main.cpp",line="7",pending=["main.cpp:7"],times="0",original-location="main.cpp:7"}
(gdb)
-exec-run
^running
=thread-group-started,id="i1",pid="1948"
(gdb)
=breakpoint-modified,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x000000000040080b",func="main",file="main.cpp",fullname="/tmp/workspace/main.cpp",line="7",pending=["main.cpp:7"],times="0",original-location="main.cpp:7"}

<---- This breakpoint-modified notification doesn't actually change anything

(gdb)
=thread-created,id="1",group-id="i1"
=thread-selected,id="1"
(gdb)
=library-loaded,id="/tmp/workspace/main",target-name="/tmp/workspace/main",host-name="/tmp/workspace/main",symbols-loaded="0",loaded_addr="-",size="0"
(gdb)
*running,thread-id="all"
(gdb)
*running,thread-id="all"
(gdb)
*stopped,reason="breakpoint-hit",disp="del",bkptno="1",frame={level="0",addr="0x000000000040080b",func="main",args=[],file="main.cpp",fullname="/tmp/workspace/main.cpp",line="7"},thread-id="1",stopped-threads="all"
(gdb)
-exec-continue
^running
(gdb)
(gdb)
*running,thread-id="all"
(gdb)
@"0\r\n"

<---- Should have breakpoint-modified notification here

(gdb)
*stopped,reason="breakpoint-hit",disp="del",bkptno="1",frame={level="0",addr="0x000000000040080b",func="main",args=[],file="main.cpp",fullname="/tmp/workspace/main.cpp",line="7"},thread-id="1",stopped-threads="all"
(gdb)