Next: , Previous: GDB/MI Async Records, Up: GDB/MI Output Records


27.5.4 gdb/mi Breakpoint Information

When gdb reports information about a breakpoint, a tracepoint, a watchpoint, or a catchpoint, it uses a tuple with the following fields:

number
The breakpoint number. For a breakpoint that represents one location of a multi-location breakpoint, this will be a dotted pair, like ‘1.2’.
type
The type of the breakpoint. For ordinary breakpoints this will be ‘breakpoint’, but many values are possible.
catch-type
If the type of the breakpoint is ‘catchpoint’, then this indicates the exact type of catchpoint.
disp
This is the breakpoint disposition—either ‘del’, meaning that the breakpoint will be deleted at the next stop, or ‘keep’, meaning that the breakpoint will not be deleted.
enabled
This indicates whether the breakpoint is enabled, in which case the value is ‘y’, or disabled, in which case the value is ‘n’. Note that this is not the same as the field enable.
addr
The address of the breakpoint. This may be a hexidecimal number, giving the address; or the string ‘<PENDING>’, for a pending breakpoint; or the string ‘<MULTIPLE>’, for a breakpoint with multiple locations. This field will not be present if no address can be determined. For example, a watchpoint does not have an address.
func
If known, the function in which the breakpoint appears. If not known, this field is not present.
filename
The name of the source file which contains this function, if known. If not known, this field is not present.
fullname
The full file name of the source file which contains this function, if known. If not known, this field is not present.
line
The line number at which this breakpoint appears, if known. If not known, this field is not present.
at
If the source file is not known, this field may be provided. If provided, this holds the address of the breakpoint, possibly followed by a symbol name.
pending
If this breakpoint is pending, this field is present and holds the text used to set the breakpoint, as entered by the user.
evaluated-by
Where this breakpoint's condition is evaluated, either ‘host’ or ‘target’.
thread
If this is a thread-specific breakpoint, then this identifies the thread in which the breakpoint can trigger.
task
If this breakpoint is restricted to a particular Ada task, then this field will hold the task identifier.
cond
If the breakpoint is conditional, this is the condition expression.
ignore
The ignore count of the breakpoint.
enable
The enable count of the breakpoint.
traceframe-usage
FIXME.
static-tracepoint-marker-string-id
For a static tracepoint, the name of the static tracepoint marker.
mask
For a masked watchpoint, this is the mask.
pass
A tracepoint's pass count.
original-location
The location of the breakpoint as originally specified by the user. This field is optional.
times
The number of times the breakpoint has been hit.
installed
This field is only given for tracepoints. This is either ‘y’, meaning that the tracepoint is installed, or ‘n’, meaning that it is not.
what
Some extra data, the exact contents of which are type-dependent.

For example, here is what the output of -break-insert (see GDB/MI Breakpoint Commands) might be:

     -> -break-insert main
     <- ^done,bkpt={number="1",type="breakpoint",disp="keep",
         enabled="y",addr="0x08048564",func="main",file="myprog.c",
         fullname="/home/nickrob/myprog.c",line="68",thread-groups=["i1"],
         times="0"}
     <- (gdb)