10
Chapter 3. A Sample gdb Session
(gdb)
p len_rquote
$4 = 7
That certainly looks wrong, assuming
len_lquote
and
len_rquote
are meant to be the lengths of
lquote
and
rquote
respectively. We can set them to better values using the
p
command, since it can
print the value of any expression--and that expression can include subroutine calls and assignments.
(gdb)
p len_lquote=strlen(lquote)
$5 = 7
(gdb)
p len_rquote=strlen(rquote)
$6 = 9
Is that enough to fix the problem of using the new quotes with the
m4
built-in
defn
? We can allow
m4
to continue executing with the
c
(
continue
) command, and then try the example that caused trouble
initially:
(gdb)
c
Continuing.
define(baz,defn(
QUOTE
foo
UNQUOTE
))
baz
0000
Success! The new quotes now work just as well as the default ones. The problem seems to have been
just the two typos defining the wrong lengths. We allow
m4
exit by giving it an EOF as input:
C-d
Program exited normally.
The message
Program exited normally.
is from gdb; it indicates
m4
has finished executing. We
can end our gdb session with the gdb
quit
command.
(gdb)
quit
Содержание 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: ......