daramarak
daramarak

Reputation: 6145

Getting the breakpoint number from gdb

I am writing gdb command scripts to simplify the debugging. One of the problems I have is that I am setting a breakpoint, and I want to disable it afterwards, and only enable it after another breakpoint is hit.

What I want to do is this

$my_break_number = break SomeFile.cpp:231
disable $my_break_number

but unfortunately gdb doesn't work this way. I have read the manual, but I cannot find any information on how to do this. Hopefully there is some information I have missed.

Upvotes: 4

Views: 2118

Answers (3)

etzl
etzl

Reputation: 105

Also info breakpoints gives useful information such as:

number of breakpoint, how many time the breakpoint was hit, address in memory, what function is it in, file and line number of breakpoint

Upvotes: 0

Employed Russian
Employed Russian

Reputation: 213375

It sounds like you may want to use the Python GDB scripting, which gives you a lot better programmatic access to breakpoints than what is possible with "regular" command scripts.

Upvotes: 4

matt
matt

Reputation: 5614

gdb will automatically set a convenience variable $bpnum with the last set breakpoint number.

You can possibly use that after setting a breakpoint to disable it (I haven't tested when a breakpoint is ambiguous and creates multiple breakpoints, I think it will work and disable all breakpoint locations created.)

see: http://sourceware.org/gdb/current/onlinedocs/gdb/Set-Breaks.html#Set-Breaks

if you need to use the breakpoint number from commands, that is probably not what you want, but it works for the question as specified.

Upvotes: 13

Related Questions