44
Chapter 7. Stopping and Continuing
No symbol "foo" in current context.
gdb does not actually evaluate
expression
at the time the
condition
command (or a com-
mand that sets a breakpoint with a condition, like
break if ...
) is given, however. Refer to
Section 10.1
Expressions
.
condition
bnum
Remove the condition from breakpoint number
bnum
. It becomes an ordinary unconditional
breakpoint.
A special case of a breakpoint condition is to stop only when the breakpoint has been reached a certain
number of times. This is so useful that there is a special way to do it, using the
ignore count
of the
breakpoint. Every breakpoint has an ignore count, which is an integer. Most of the time, the ignore
count is zero, and therefore has no effect. But if your program reaches a breakpoint whose ignore
count is positive, then instead of stopping, it just decrements the ignore count by one and continues.
As a result, if the ignore count value is
n
, the breakpoint does not stop the next
n
times your program
reaches it.
ignore
bnum count
Set the ignore count of breakpoint number
bnum
to
count
. The next
count
times the breakpoint
is reached, your program’s execution does not stop; other than to decrement the ignore count,
gdb takes no action.
To make the breakpoint stop the next time it is reached, specify a count of zero.
When you use
continue
to resume execution of your program from a breakpoint, you can
specify an ignore count directly as an argument to
continue
, rather than using
ignore
. Refer
to Section 7.2
Continuing and stepping
.
If a breakpoint has a positive ignore count and a condition, the condition is not checked. Once
the ignore count reaches zero, gdb resumes checking the condition.
You could achieve the effect of the ignore count with a condition such as
$foo-
= 0
using a
debugger convenience variable that is decremented each time. Refer to Section 10.9
Convenience
variables
.
Ignore counts apply to breakpoints, watchpoints, and catchpoints.
7.1.7. Breakpoint command lists
You can give any breakpoint (or watchpoint or catchpoint) a series of commands to execute when
your program stops due to that breakpoint. For example, you might want to print the values of certain
expressions, or enable other breakpoints.
commands [
bnum
]
...
command-list
...
end
Specify a list of commands for breakpoint number
bnum
. The commands themselves appear on
the following lines. Type a line containing just
end
to terminate the commands.
To remove all commands from a breakpoint, type
commands
and follow it immediately with
end
;
that is, give no commands.
With no
bnum
argument,
commands
refers to the last breakpoint, watchpoint, or catchpoint set
(not to the breakpoint most recently encountered).
Pressing [RET] as a means of repeating the last gdb command is disabled within a
command-list
.
Содержание ENTERPRISE LINUX 4 - DEVELOPER TOOLS GUIDE
Страница 1: ...Red Hat Enterprise Linux 4 Debugging with gdb ...
Страница 12: ...2 Chapter 1 Debugging with gdb ...
Страница 28: ...18 Chapter 4 Getting In and Out of gdb ...
Страница 34: ...24 Chapter 5 gdb Commands ...
Страница 44: ...34 Chapter 6 Running Programs Under gdb ...
Страница 68: ...58 Chapter 8 Examining the Stack ...
Страница 98: ...88 Chapter 10 Examining Data ...
Страница 112: ...102 Chapter 12 Tracepoints ...
Страница 118: ...108 Chapter 13 Debugging Programs That Use Overlays ...
Страница 138: ...128 Chapter 14 Using gdb with Different Languages ...
Страница 144: ...134 Chapter 15 Examining the Symbol Table ...
Страница 170: ...160 Chapter 19 Debugging remote programs ...
Страница 198: ...188 Chapter 21 Controlling gdb ...
Страница 204: ...194 Chapter 22 Canned Sequences of Commands ...
Страница 206: ...196 Chapter 23 Command Interpreters ...
Страница 216: ...206 Chapter 25 Using gdb under gnu Emacs ...
Страница 296: ...286 Chapter 27 gdb Annotations ...
Страница 300: ...290 Chapter 28 Reporting Bugs in gdb ...
Страница 322: ...312 Chapter 30 Using History Interactively ...
Страница 362: ...352 Appendix D gdb Remote Serial Protocol ...
Страница 380: ...370 Appendix F GNU GENERAL PUBLIC LICENSE ...
Страница 386: ...376 Appendix G GNU Free Documentation License ...
Страница 410: ......