Debugging with GDB
5.1.8 Breakpoint menus
Some programming languages (notably C++) permit a single function name
to be defined several times, for application in different contexts.
This is called overloading. When a function name is overloaded,
`break function' is not enough to tell GDB where you want
a breakpoint. If you realize this is a problem, you can use
something like `break function(types)' to specify which
particular version of the function you want. Otherwise, GDB offers
you a menu of numbered choices for different possible breakpoints, and
waits for your selection with the prompt `>'. The first two
options are always ` cancel' and ` all'. Typing 1
sets a breakpoint at each definition of function, and typing
0 aborts the
break command without setting any new
For example, the following session excerpt shows an attempt to set a
breakpoint at the overloaded symbol
We choose three particular definitions of that function name:
(gdb) b String::after
 file:String.cc; line number:867
 file:String.cc; line number:860
 file:String.cc; line number:875
 file:String.cc; line number:853
 file:String.cc; line number:846
 file:String.cc; line number:735
> 2 4 6
Breakpoint 1 at 0xb26c: file String.cc, line 867.
Breakpoint 2 at 0xb344: file String.cc, line 875.
Breakpoint 3 at 0xafcc: file String.cc, line 846.
Multiple breakpoints were set.
Use the "delete" command to delete unwanted