From 6d2ebf8bcc854cde411391c02ec4278a9d51922e Mon Sep 17 00:00:00 2001 From: Stan Shebs Date: Tue, 28 Mar 2000 16:46:24 +0000 Subject: [PATCH] * gdb.texinfo: Update dates, bump to Eighth Edition (note expectation of additional changes before release), update ISBN, add copy of top-level menu for @ifhtml, remove explicit node links, rephrase and/or shorten lines to fix formatting problem in both regular and @smallbook formats. * annotate.texi: Shorten lines in example, use smallexample consistently everywhere. * Makefile.in: Add comment about texinfo 4.0 html generation. (SFILES_INCLUDED): Add annotate.texi. --- gdb/doc/ChangeLog | 12 + gdb/doc/Makefile.in | 6 +- gdb/doc/annotate.texi | 156 +++++------ gdb/doc/gdb.texinfo | 584 ++++++++++++++++++++++++------------------ 4 files changed, 431 insertions(+), 327 deletions(-) diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index a7603ea8240..e489f8ada6f 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,15 @@ +2000-03-28 Stan Shebs + + * gdb.texinfo: Update dates, bump to Eighth Edition (note + expectation of additional changes before release), update + ISBN, add copy of top-level menu for @ifhtml, remove explicit + node links, rephrase and/or shorten lines to fix formatting + problem in both regular and @smallbook formats. + * annotate.texi: Shorten lines in example, use smallexample + consistently everywhere. + * Makefile.in: Add comment about texinfo 4.0 html generation. + (SFILES_INCLUDED): Add annotate.texi. + 2000-03-27 Daniel Berlin * gdb.texinfo (Debugging Output): Added new section, documenting diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in index df92d6d9a96..0b703a88c56 100644 --- a/gdb/doc/Makefile.in +++ b/gdb/doc/Makefile.in @@ -40,6 +40,10 @@ TEXIDIR=${gdbdir}/../texinfo # where to find makeinfo, preferably one designed for texinfo-2 MAKEINFO=makeinfo +# Note that texinfo 4.0's makeinfo --html can only generate a +# single file, which would be too large, so continue to use +# texi2html. -sts 2000-03-28 + MAKEHTML = texi2html MAKEHTMLFLAGS = -glossary -menu -split_chapter @@ -83,7 +87,7 @@ TEXINDEX = texindex DVIPS = dvips # Main GDB manual's source files -SFILES_INCLUDED = gdb-cfg.texi +SFILES_INCLUDED = gdb-cfg.texi $(srcdir)/annotate.texi SFILES_LOCAL = $(srcdir)/gdb.texinfo GDBvn.texi $(SFILES_INCLUDED) diff --git a/gdb/doc/annotate.texi b/gdb/doc/annotate.texi index 42d065158f5..2bcf20f74f4 100644 --- a/gdb/doc/annotate.texi +++ b/gdb/doc/annotate.texi @@ -60,9 +60,9 @@ @chapter @value{GDBN} Annotations @end ifclear -This chapter describes annotations in @value{GDBN}, the GNU symbolic debugger. -Annotations are designed to interface @value{GDBN} to graphical user interfaces -or other similar programs which want to interact with @value{GDBN} at a +This chapter describes annotations in @value{GDBN}. Annotations are +designed to interface @value{GDBN} to graphical user interfaces or other +similar programs which want to interact with @value{GDBN} at a relatively high level. @ignore @@ -100,10 +100,11 @@ additional information, and a newline. The additional information cannot contain newline characters. Any output not beginning with a newline and two @samp{control-z} -characters denotes literal output from @value{GDBN}. Currently there is no need -for @value{GDBN} to output a newline followed by two @samp{control-z} characters, -but if there was such a need, the annotations could be extended with an -@samp{escape} annotation which means those three characters as output. +characters denotes literal output from @value{GDBN}. Currently there is +no need for @value{GDBN} to output a newline followed by two +@samp{control-z} characters, but if there was such a need, the +annotations could be extended with an @samp{escape} annotation which +means those three characters as output. A simple example of starting up @value{GDBN} with annotations is: @@ -111,10 +112,12 @@ A simple example of starting up @value{GDBN} with annotations is: $ gdb --annotate=2 GNU GDB 5.0 Copyright 2000 Free Software Foundation, Inc. -GDB is free software, covered by the GNU General Public License, and you are -welcome to change it and/or distribute copies of it under certain conditions. +GDB is free software, covered by the GNU General Public License, +and you are welcome to change it and/or distribute copies of it +under certain conditions. Type "show copying" to see the conditions. -There is absolutely no warranty for GDB. Type "show warranty" for details. +There is absolutely no warranty for GDB. Type "show warranty" +for details. This GDB was configured as "sparc-sun-sunos4.1.3" ^Z^Zpre-prompt @@ -126,19 +129,20 @@ quit $ @end smallexample -Here @samp{quit} is input to @value{GDBN}; the rest is output from @value{GDBN}. The three -lines beginning @samp{^Z^Z} (where @samp{^Z} denotes a @samp{control-z} -character) are annotations; the rest is output from @value{GDBN}. +Here @samp{quit} is input to @value{GDBN}; the rest is output from +@value{GDBN}. The three lines beginning @samp{^Z^Z} (where @samp{^Z} +denotes a @samp{control-z} character) are annotations; the rest is +output from @value{GDBN}. @node Server Prefix @section The Server Prefix @cindex server prefix for annotations -To issue a command to @value{GDBN} without affecting certain aspects of the state -which is seen by users, prefix it with @samp{server }. This means that -this command will not affect the command history, nor will it affect -@value{GDBN}'s notion of which command to repeat if @key{RET} is pressed on a -line by itself. +To issue a command to @value{GDBN} without affecting certain aspects of +the state which is seen by users, prefix it with @samp{server }. This +means that this command will not affect the command history, nor will it +affect @value{GDBN}'s notion of which command to repeat if @key{RET} is +pressed on a line by itself. The server prefix does not affect the recording of values into the value history; to print a value without recording it into the value history, @@ -148,8 +152,8 @@ use the @code{output} command instead of the @code{print} command. @section Values @cindex annotations for values -When a value is printed in various contexts, @value{GDBN} uses annotations to -delimit the value from the surrounding text. +When a value is printed in various contexts, @value{GDBN} uses +annotations to delimit the value from the surrounding text. @findex value-history-begin @findex value-history-value @@ -157,13 +161,13 @@ delimit the value from the surrounding text. If a value is printed using @code{print} and added to the value history, the annotation looks like -@example +@smallexample ^Z^Zvalue-history-begin @var{history-number} @var{value-flags} @var{history-string} ^Z^Zvalue-history-value @var{the-value} ^Z^Zvalue-history-end -@end example +@end smallexample where @var{history-number} is the number it is getting in the value history, @var{history-string} is a string, such as @samp{$5 = }, which @@ -176,11 +180,11 @@ a value which can be dereferenced and @samp{-} for a value which cannot. If the value is not added to the value history (it is an invalid float or it is printed with the @code{output} command), the annotation is similar: -@example +@smallexample ^Z^Zvalue-begin @var{value-flags} @var{the-value} ^Z^Zvalue-end -@end example +@end smallexample @findex arg-begin @findex arg-name-end @@ -189,7 +193,7 @@ or it is printed with the @code{output} command), the annotation is similar: When @value{GDBN} prints an argument to a function (for example, in the output from the @code{backtrace} command), it annotates it as follows: -@example +@smallexample ^Z^Zarg-begin @var{argument-name} ^Z^Zarg-name-end @@ -197,7 +201,7 @@ from the @code{backtrace} command), it annotates it as follows: ^Z^Zarg-value @var{value-flags} @var{the-value} ^Z^Zarg-end -@end example +@end smallexample where @var{argument-name} is the name of the argument, @var{separator-string} is text which separates the name from the value @@ -211,7 +215,7 @@ for the user's benefit (such as @samp{=}), and @var{value-flags} and @findex field-end When printing a structure, @value{GDBN} annotates it as follows: -@example +@smallexample ^Z^Zfield-begin @var{value-flags} @var{field-name} ^Z^Zfield-name-end @@ -219,7 +223,7 @@ When printing a structure, @value{GDBN} annotates it as follows: ^Z^Zfield-value @var{the-value} ^Z^Zfield-end -@end example +@end smallexample where @var{field-name} is the name of the field, @var{separator-string} is text which separates the name from the value for the user's benefit @@ -228,9 +232,9 @@ same meanings as in a @code{value-history-begin} annotation. When printing an array, @value{GDBN} annotates it as follows: -@example +@smallexample ^Z^Zarray-section-begin @var{array-index} @var{value-flags} -@end example +@end smallexample where @var{array-index} is the index of the first element being annotated and @var{value-flags} has the same meaning as in a @@ -238,23 +242,23 @@ annotated and @var{value-flags} has the same meaning as in a of elements, where is element can be either a single element: @findex elt -@example +@smallexample @samp{,} @var{whitespace} ; @r{omitted for the first element} @var{the-value} ^Z^Zelt -@end example +@end smallexample or a repeated element @findex elt-rep @findex elt-rep-end -@example +@smallexample @samp{,} @var{whitespace} ; @r{omitted for the first element} @var{the-value} ^Z^Zelt-rep @var{number-of-repititions} @var{repetition-string} ^Z^Zelt-rep-end -@end example +@end smallexample In both cases, @var{the-value} is the output for the value of the element and @var{whitespace} can contain spaces, tabs, and newlines. In @@ -267,9 +271,9 @@ user that repitition is being depicted. Once all the array elements have been output, the array annotation is ended with -@example +@smallexample ^Z^Zarray-section-end -@end example +@end smallexample @node Frame Annotations @section Frames @@ -282,10 +286,10 @@ to frames printed when @value{GDBN} stops, output from commands such as @findex frame-begin The frame annotation begins with -@example +@smallexample ^Z^Zframe-begin @var{level} @var{address} @var{level-string} -@end example +@end smallexample where @var{level} is the number of the frame (0 is the innermost frame, and other frames have positive numbers), @var{address} is the address of @@ -295,9 +299,9 @@ designed to convey the level to the user. @var{address} is in the form does not depend on the language). The frame ends with @findex frame-end -@example +@smallexample ^Z^Zframe-end -@end example +@end smallexample Between these annotations is the main body of the frame, which can consist of @@ -305,10 +309,10 @@ consist of @itemize @bullet @item @findex function-call -@example +@smallexample ^Z^Zfunction-call @var{function-call-string} -@end example +@end smallexample where @var{function-call-string} is text designed to convey to the user that this frame is associated with a function call made by @value{GDBN} to a @@ -316,10 +320,10 @@ function in the program being debugged. @item @findex signal-handler-caller -@example +@smallexample ^Z^Zsignal-handler-caller @var{signal-handler-caller-string} -@end example +@end smallexample where @var{signal-handler-caller-string} is text designed to convey to the user that this frame is associated with whatever mechanism is used @@ -334,12 +338,12 @@ A normal frame. This can optionally (depending on whether this is thought of as interesting information for the user to see) begin with -@example +@smallexample ^Z^Zframe-address @var{address} ^Z^Zframe-address-end @var{separator-string} -@end example +@end smallexample where @var{address} is the address executing in the frame (the same address as in the @code{frame-begin} annotation, but printed in a form @@ -352,12 +356,12 @@ benefit. @findex frame-args Then comes -@example +@smallexample ^Z^Zframe-function-name @var{function-name} ^Z^Zframe-args @var{arguments} -@end example +@end smallexample where @var{function-name} is the name of the function executing in the frame, or @samp{??} if not known, and @var{arguments} are the arguments @@ -371,7 +375,7 @@ individually as well, @pxref{Value Annotations}). @findex frame-source-end If source information is available, a reference to it is then printed: -@example +@smallexample ^Z^Zframe-source-begin @var{source-intro-string} ^Z^Zframe-source-file @@ -381,7 +385,7 @@ If source information is available, a reference to it is then printed: ^Z^Zframe-source-line @var{line-number} ^Z^Zframe-source-end -@end example +@end smallexample where @var{source-intro-string} separates for the user's benefit the reference from the text which precedes it, @var{filename} is the name of @@ -393,10 +397,10 @@ If @value{GDBN} prints some information about where the frame is from (which library, which load segment, etc.; currently only done on the RS/6000), it is annotated with -@example +@smallexample ^Z^Zframe-where @var{information} -@end example +@end smallexample Then, if source is to actually be displayed for this frame (for example, this is not true for output from the @code{backtrace} command), then a @@ -419,7 +423,7 @@ output, not in addition. When @value{GDBN} is told to display something using the @code{display} command, the results of the display are annotated: -@example +@smallexample ^Z^Zdisplay-begin @var{number} ^Z^Zdisplay-number-end @@ -433,7 +437,7 @@ the results of the display are annotated: ^Z^Zdisplay-value @var{value} ^Z^Zdisplay-end -@end example +@end smallexample where @var{number} is the number of the display, @var{number-separator} is intended to separate the number from what follows for the user, @@ -459,11 +463,11 @@ annotation which denotes the end of any echo which may (or may not) be associated with the input. For example, the @code{prompt} input type features the following annotations: -@example +@smallexample ^Z^Zpre-prompt ^Z^Zprompt ^Z^Zpost-prompt -@end example +@end smallexample The input types are @@ -508,16 +512,16 @@ presence of annotations. @cindex annotations for errors, warnings and interrupts @findex quit -@example +@smallexample ^Z^Zquit -@end example +@end smallexample This annotation occurs right before @value{GDBN} responds to an interrupt. @findex error -@example +@smallexample ^Z^Zerror -@end example +@end smallexample This annotation occurs right before @value{GDBN} responds to an error. @@ -532,9 +536,9 @@ to the top level. @findex error-begin A quit or error annotation may be preceded by -@example +@smallexample ^Z^Zerror-begin -@end example +@end smallexample Any output between that and the quit or error annotation is the error message. @@ -551,11 +555,11 @@ The output from the @code{info breakpoints} command is annotated as follows: @findex breakpoints-headers @findex breakpoints-table -@example +@smallexample ^Z^Zbreakpoints-headers @var{header-entry} ^Z^Zbreakpoints-table -@end example +@end smallexample where @var{header-entry} has the same syntax as an entry (see below) but instead of containing data, it contains strings which are intended to @@ -566,7 +570,7 @@ of: @findex record @findex field -@example +@smallexample ^Z^Zrecord ^Z^Zfield 0 @var{number} @@ -588,7 +592,7 @@ of: @var{ignore-count} ^Z^Zfield 9 @var{commands} -@end example +@end smallexample Note that @var{address} is intended for user consumption---the syntax varies depending on the language. @@ -596,9 +600,9 @@ varies depending on the language. The output ends with @findex breakpoints-table-end -@example +@smallexample ^Z^Zbreakpoints-table-end -@end example +@end smallexample @node Invalidation @section Invalidation Notices @@ -630,15 +634,15 @@ deleted a breakpoint. When the program starts executing due to a @value{GDBN} command such as @code{step} or @code{continue}, -@example +@smallexample ^Z^Zstarting -@end example +@end smallexample is output. When the program stops, -@example +@smallexample ^Z^Zstopped -@end example +@end smallexample is output. Before the @code{stopped} annotation, a variety of annotations describe how the program stopped. @@ -658,7 +662,7 @@ successful exit, otherwise nonzero). The program exited with a signal. After the @code{^Z^Zsignalled}, the annotation continues: -@example +@smallexample @var{intro-text} ^Z^Zsignal-name @var{name} @@ -668,7 +672,7 @@ annotation continues: @var{string} ^Z^Zsignal-string-end @var{end-text} -@end example +@end smallexample where @var{name} is the name of the signal, such as @code{SIGILL} or @code{SIGSEGV}, and @var{string} is the explanation of the signal, such @@ -698,9 +702,9 @@ The program hit watchpoint number @var{number}. @findex source The following annotation is used instead of displaying source code: -@example +@smallexample ^Z^Zsource @var{filename}:@var{line}:@var{character}:@var{middle}:@var{addr} -@end example +@end smallexample where @var{filename} is an absolute file name indicating which source file, @var{line} is the line number within that file (where 1 is the diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index c58d0460ae8..be4a8c906db 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -1,5 +1,5 @@ \input texinfo @c -*-texinfo-*- -@c Copyright 1988-1999 +@c Copyright 1988-2000 @c Free Software Foundation, Inc. @c @c %**start of header @@ -25,15 +25,15 @@ @syncodeindex vr cp @c !!set GDB manual's edition---not the same as GDB version! -@set EDITION Seventh +@set EDITION Eighth @c !!set GDB manual's revision date -@set DATE February 1999 +@set DATE March 2000 -@c THIS MANUAL REQUIRES TEXINFO-2 macros and info-makers to format properly. +@c THIS MANUAL REQUIRES TEXINFO 3.12 OR LATER. @c This is a dir.info fragment to support semi-automated addition of -@c manuals to an info tree. zoo@cygnus.com is developing this facility. +@c manuals to an info tree. @dircategory Programming & development tools. @direntry * Gdb: (gdb). The @sc{gnu} debugger. @@ -47,7 +47,7 @@ This is the @value{EDITION} Edition, @value{DATE}, of @cite{Debugging with @value{GDBN}: the @sc{gnu} Source-Level Debugger} for @value{GDBN} Version @value{GDBVN}. -Copyright (C) 1988-1999 Free Software Foundation, Inc. +Copyright (C) 1988-2000 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice @@ -85,17 +85,14 @@ into another language, under the above conditions for modified versions. } @end tex -@c ISBN seems to be wrong... - @vskip 0pt plus 1filll -Copyright @copyright{} 1988-1999 Free Software Foundation, Inc. +Copyright @copyright{} 1988-2000 Free Software Foundation, Inc. @sp 2 Published by the Free Software Foundation @* 59 Temple Place - Suite 330, @* Boston, MA 02111-1307 USA @* -Printed copies are available for $20 each. @* -ISBN 1-882114-11-6 @* - +ISBN 1-882114-77-9 @* + Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. @@ -110,9 +107,9 @@ into another language, under the above conditions for modified versions. @end titlepage @page - -@node Top, Summary, (dir), (dir) @ifinfo +@node Top, Summary, (dir), (dir) + @top Debugging with @value{GDBN} This file describes @value{GDBN}, the @sc{gnu} symbolic debugger. @@ -120,8 +117,57 @@ This file describes @value{GDBN}, the @sc{gnu} symbolic debugger. This is the @value{EDITION} Edition, @value{DATE}, for @value{GDBN} Version @value{GDBVN}. -Copyright (C) 1988-1999 Free Software Foundation, Inc. +Copyright (C) 1988-2000 Free Software Foundation, Inc. + +@menu +* Summary:: Summary of @value{GDBN} +* Sample Session:: A sample @value{GDBN} session + +* Invocation:: Getting in and out of @value{GDBN} +* Commands:: @value{GDBN} commands +* Running:: Running programs under @value{GDBN} +* Stopping:: Stopping and continuing +* Stack:: Examining the stack +* Source:: Examining source files +* Data:: Examining data + +* Languages:: Using @value{GDBN} with different languages + +* Symbols:: Examining the symbol table +* Altering:: Altering execution +* GDB Files:: @value{GDBN} files +* Targets:: Specifying a debugging target +* Configurations:: Configuration-specific information +* Controlling GDB:: Controlling @value{GDBN} +* Sequences:: Canned sequences of commands +* Emacs:: Using @value{GDBN} under @sc{gnu} Emacs +* Annotations:: @value{GDBN}'s annotation interface. + +* GDB Bugs:: Reporting bugs in @value{GDBN} +* Formatting Documentation:: How to format and print @value{GDBN} documentation + +* Command Line Editing:: Command Line Editing +* Using History Interactively:: Using History Interactively +* Installing GDB:: Installing GDB +* Index:: Index +@end menu + @end ifinfo + +@c the replication sucks, but this avoids a texinfo 3.12 lameness + +@ifhtml +@node Top + +@top Debugging with @value{GDBN} + +This file describes @value{GDBN}, the @sc{gnu} symbolic debugger. + +This is the @value{EDITION} Edition, @value{DATE}, for @value{GDBN} Version +@value{GDBVN}. + +Copyright (C) 1988-2000 Free Software Foundation, Inc. + @menu * Summary:: Summary of @value{GDBN} * Sample Session:: A sample @value{GDBN} session @@ -144,7 +190,7 @@ Copyright (C) 1988-1999 Free Software Foundation, Inc. * Controlling GDB:: Controlling @value{GDBN} * Sequences:: Canned sequences of commands * Emacs:: Using @value{GDBN} under @sc{gnu} Emacs -* Annotations:: @value{GDBN}'s annotations interface. +* Annotations:: @value{GDBN}'s annotation interface. * GDB Bugs:: Reporting bugs in @value{GDBN} * Formatting Documentation:: How to format and print @value{GDBN} documentation @@ -155,7 +201,9 @@ Copyright (C) 1988-1999 Free Software Foundation, Inc. * Index:: Index @end menu -@node Summary, Sample Session, Top, Top +@end ifhtml + +@node Summary @unnumbered Summary of @value{GDBN} The purpose of a debugger such as @value{GDBN} is to allow you to see what is @@ -205,7 +253,7 @@ underscore. * Contributors:: Contributors to GDB @end menu -@node Free Software, Contributors, Summary, Summary +@node Free Software @unnumberedsec Free software @value{GDBN} is @dfn{free software}, protected by the @sc{gnu} @@ -221,7 +269,7 @@ Fundamentally, the General Public License is a license which says that you have these freedoms and that you cannot take these freedoms away from anyone else. -@node Contributors, , Free Software, Summary +@node Contributors @unnumberedsec Contributors to @value{GDBN} Richard Stallman was the original author of @value{GDBN}, and of many @@ -360,7 +408,7 @@ Thomas, Michael Tiemann, Tom Tromey, Ron Unrau, Jim Wilson, and David Zuhn have made contributions both large and small. -@node Sample Session, Invocation, Summary, Top +@node Sample Session @chapter A Sample @value{GDBN} Session You can use this manual at your leisure to read all about @value{GDBN}. @@ -630,7 +678,7 @@ session with the @value{GDBN} @code{quit} command. (@value{GDBP}) @b{quit} @end smallexample -@node Invocation, Commands, Sample Session, Top +@node Invocation @chapter Getting In and Out of @value{GDBN} This chapter discusses how to start @value{GDBN}, and how to get out of it. @@ -648,7 +696,7 @@ type @kbd{quit} or @kbd{C-d} to exit. * Shell Commands:: How to use shell commands inside @value{GDBN} @end menu -@node Invoking GDB, Quitting GDB, Invocation, Invocation +@node Invoking GDB @section Invoking @value{GDBN} Invoke @value{GDBN} by running the program @code{@value{GDBP}}. Once started, @@ -725,7 +773,7 @@ in sequential order. The order makes a difference when the * Mode Options:: Choosing modes @end menu -@node File Options, Mode Options, Invoking GDB, Invoking GDB +@node File Options @subsection Choosing files When @value{GDBN} starts, it reads any arguments other than options as @@ -833,7 +881,7 @@ but build a @file{.syms} file for future use is: gdb -batch -nx -mapped -readnow programname @end example -@node Mode Options, , File Options, Invoking GDB +@node Mode Options @subsection Choosing modes You can run @value{GDBN} in various alternative modes---for example, in @@ -1014,7 +1062,7 @@ no-warranty blurb, and exit. @end table -@node Quitting GDB, Shell Commands, Invoking GDB, Invocation +@node Quitting GDB @section Quitting @value{GDBN} @cindex exiting @value{GDBN} @cindex leaving @value{GDBN} @@ -1042,7 +1090,7 @@ If you have been using @value{GDBN} to control an attached process or device, you can release it with the @code{detach} command (@pxref{Attach, ,Debugging an already-running process}). -@node Shell Commands, , Quitting GDB, Invocation +@node Shell Commands @section Shell commands If you need to execute occasional shell commands during your @@ -1071,7 +1119,7 @@ Execute the @code{make} program with the specified arguments. This is equivalent to @samp{shell make @var{make-args}}. @end table -@node Commands, Running, Invocation, Top +@node Commands @chapter @value{GDBN} Commands You can abbreviate a @value{GDBN} command to the first few letters of the command @@ -1086,7 +1134,7 @@ show you the alternatives available, if there is more than one possibility). * Help:: How to ask @value{GDBN} for help @end menu -@node Command Syntax, Completion, Commands, Commands +@node Command Syntax @section Command syntax A @value{GDBN} command is a single line of input. There is no limit on @@ -1129,7 +1177,7 @@ Any text from a @kbd{#} to the end of the line is a comment; it does nothing. This is useful mainly in command files (@pxref{Command Files,,Command files}). -@node Completion, Help, Command Syntax, Commands +@node Completion @section Command completion @cindex completion @@ -1248,7 +1296,7 @@ overload-resolution off} to disable overload resolution; see @ref{Debugging C plus plus, ,@value{GDBN} features for C++}. -@node Help, , Completion, Commands +@node Help @section Getting help @cindex online documentation @kindex help @@ -1331,10 +1379,12 @@ apropos reload @noindent results in: @smallexample -@group -set symbol-reloading -- Set dynamic symbol table reloading multiple times in one run -show symbol-reloading -- Show dynamic symbol table reloading multiple times in one run -@end group +@c @group +set symbol-reloading -- Set dynamic symbol table reloading + multiple times in one run +show symbol-reloading -- Show dynamic symbol table reloading + multiple times in one run +@c @end group @end smallexample @kindex complete @@ -1433,7 +1483,7 @@ if your version of @value{GDBN} comes with one. @end table -@node Running, Stopping, Commands, Top +@node Running @chapter Running Programs Under @value{GDBN} When you run a program under @value{GDBN}, you must first generate @@ -1459,7 +1509,7 @@ kill a child process. * Processes:: Debugging programs with multiple processes @end menu -@node Compilation, Starting, Running, Running +@node Compilation @section Compiling for debugging In order to debug a program effectively, you need to generate @@ -1500,7 +1550,7 @@ Older versions of the @sc{gnu} C compiler permitted a variant option format; if your @sc{gnu} C compiler has this option, do not use it. @need 2000 -@node Starting, Arguments, Compilation, Running +@node Starting @section Starting your program @cindex starting @cindex running @@ -1576,7 +1626,7 @@ time @value{GDBN} read its symbols, @value{GDBN} discards its symbol table, and reads it again. When it does this, @value{GDBN} tries to retain your current breakpoints. -@node Arguments, Environment, Starting, Running +@node Arguments @section Your program's arguments @cindex arguments (to your program) @@ -1610,7 +1660,7 @@ it again without arguments. Show the arguments to give your program when it is started. @end table -@node Environment, Working Directory, Arguments, Running +@node Environment @section Your program's environment @cindex environment (of your program) @@ -1693,7 +1743,7 @@ your program. You may wish to move setting of environment variables to files that are only run when you sign on, such as @file{.login} or @file{.profile}. -@node Working Directory, Input/Output, Environment, Running +@node Working Directory @section Your program's working directory @cindex working directory (of your program) @@ -1717,7 +1767,7 @@ Set the @value{GDBN} working directory to @var{directory}. Print the @value{GDBN} working directory. @end table -@node Input/Output, Attach, Working Directory, Running +@node Input/Output @section Your program's input and output @cindex redirection @@ -1771,7 +1821,7 @@ When you use the @code{tty} command or redirect input in the @code{run} command, only the input @emph{for your program} is affected. The input for @value{GDBN} still comes from your terminal. -@node Attach, Kill Process, Input/Output, Running +@node Attach @section Debugging an already-running process @kindex attach @cindex attach @@ -1827,7 +1877,7 @@ control whether or not you need to confirm by using the @code{set confirm} command (@pxref{Messages/Warnings, ,Optional warnings and messages}). -@node Kill Process, Threads, Attach, Running +@node Kill Process @section Killing the child process @table @code @@ -1852,7 +1902,7 @@ next type @code{run}, @value{GDBN} notices that the file has changed, and reads the symbol table again (while trying to preserve your current breakpoint settings). -@node Threads, Processes, Kill Process, Running +@node Threads @section Debugging programs with multiple threads @cindex threads of execution @@ -2017,9 +2067,12 @@ For example, @example (@value{GDBP}) info threads - * 3 system thread 26607 worker (wptr=0x7b09c318 "@@") at quicksort.c:137 - 2 system thread 26606 0x7b0030d8 in __ksleep () from /usr/lib/libc.2 - 1 system thread 27905 0x7b003498 in _brk () from /usr/lib/libc.2 + * 3 system thread 26607 worker (wptr=0x7b09c318 "@@") \@* + at quicksort.c:137 + 2 system thread 26606 0x7b0030d8 in __ksleep () \@* + from /usr/lib/libc.2 + 1 system thread 27905 0x7b003498 in _brk () \@* + from /usr/lib/libc.2 @end example @table @code @@ -2069,7 +2122,7 @@ programs with multiple threads. @xref{Set Watchpoints,,Setting watchpoints}, for information about watchpoints in programs with multiple threads. -@node Processes, , Threads, Running +@node Processes @section Debugging programs with multiple processes @cindex fork, debugging programs which call @@ -2146,7 +2199,7 @@ You can use the @code{catch} command to make @value{GDBN} stop whenever a @code{fork}, @code{vfork}, or @code{exec} call is made. @xref{Set Catchpoints, ,Setting catchpoints}. -@node Stopping, Stack, Running, Top +@node Stopping @chapter Stopping and Continuing The principal purposes of using a debugger are so that you can stop your @@ -2175,7 +2228,7 @@ running or not, what process it is, and why it stopped. * Thread Stops:: Stopping and starting multi-thread programs @end menu -@node Breakpoints, Continuing and Stepping, Stopping, Stopping +@node Breakpoints @section Breakpoints, watchpoints, and catchpoints @cindex breakpoints @@ -2249,7 +2302,7 @@ all breakpoint in that range are operated on. * Error in Breakpoints:: ``Cannot insert breakpoints'' @end menu -@node Set Breaks, Set Watchpoints, Breakpoints, Breakpoints +@node Set Breaks @subsection Setting breakpoints @c FIXME LMB what does GDB do if no code on line of breakpt? @@ -2481,7 +2534,7 @@ Shared library events. @end table -@node Set Watchpoints, Set Catchpoints, Set Breaks, Breakpoints +@node Set Watchpoints @subsection Setting watchpoints @cindex setting watchpoints @@ -2624,7 +2677,7 @@ when a non-current thread's activity changes the expression. (Hardware watchpoints, in contrast, watch an expression in all threads.) @end quotation -@node Set Catchpoints, Delete Breaks, Set Watchpoints, Breakpoints +@node Set Catchpoints @subsection Setting catchpoints @cindex catchpoints, setting @cindex exception handlers @@ -2732,7 +2785,7 @@ breakpoints to stop your program when any of a number of exceptions are raised. -@node Delete Breaks, Disabling, Set Catchpoints, Breakpoints +@node Delete Breaks @subsection Deleting breakpoints @cindex clearing breakpoints, watchpoints, catchpoints @@ -2777,7 +2830,7 @@ breakpoints (@value{GDBN} asks confirmation, unless you have @code{set confirm off}). You can abbreviate this command as @code{d}. @end table -@node Disabling, Conditions, Delete Breaks, Breakpoints +@node Disabling @subsection Disabling breakpoints @kindex disable breakpoints @@ -2850,7 +2903,7 @@ breakpoint of its own, but it does not change the state of your other breakpoints; see @ref{Continuing and Stepping, ,Continuing and stepping}.) -@node Conditions, Break Commands, Disabling, Breakpoints +@node Conditions @subsection Break conditions @cindex conditional breakpoints @cindex breakpoint conditions @@ -2967,7 +3020,7 @@ variables}. Ignore counts apply to breakpoints, watchpoints, and catchpoints. -@node Break Commands, Breakpoint Menus, Conditions, Breakpoints +@node Break Commands @subsection Breakpoint command lists @cindex breakpoint commands @@ -3048,7 +3101,7 @@ cont end @end example -@node Breakpoint Menus, Error in Breakpoints, Break Commands, Breakpoints +@node Breakpoint Menus @subsection Breakpoint menus @cindex overloading @cindex symbol overloading @@ -3095,7 +3148,7 @@ Use the "delete" command to delete unwanted @end smallexample @c @ifclear BARETARGET -@node Error in Breakpoints, , Breakpoint Menus, Breakpoints +@node Error in Breakpoints @subsection ``Cannot insert breakpoints'' @c @c FIXME!! 14/6/95 Is there a real example of this? Let's use it. @@ -3148,7 +3201,7 @@ When this message is printed, you need to disable or remove some of the hardware-assisted breakpoints and watchpoints, and then continue. -@node Continuing and Stepping, Signals, Breakpoints, Stopping +@node Continuing and Stepping @section Continuing and stepping @cindex stepping @@ -3350,7 +3403,7 @@ proceed until the function returns. An argument is a repeat count, as in @code{next}. @end table -@node Signals, Thread Stops, Continuing and Stepping, Stopping +@node Signals @section Signals @cindex signals @@ -3446,7 +3499,7 @@ a result of the fatal signal once it saw the signal. To prevent this, you can continue with @samp{signal 0}. @xref{Signaling, ,Giving your program a signal}. -@node Thread Stops, , Signals, Stopping +@node Thread Stops @section Stopping and starting multi-thread programs When your program has multiple threads (@pxref{Threads,, Debugging @@ -3531,7 +3584,7 @@ Display the current scheduler locking mode. @end table -@node Stack, Source, Stopping, Top +@node Stack @chapter Examining the Stack When your program has stopped, the first thing you need to know is where it @@ -3570,7 +3623,7 @@ currently executing frame and describes it briefly, similar to the @end menu -@node Frames, Backtrace, Stack, Stack +@node Frames @section Stack frames @cindex frame, definition @@ -3608,11 +3661,15 @@ and so on upward. These numbers do not really exist in your program; they are assigned by @value{GDBN} to give you a way of designating stack frames in @value{GDBN} commands. -@c below produces an acceptable overful hbox. --mew 13aug1993 +@c The -fomit-frame-pointer below perennially causes hbox overflow +@c underflow problems. @cindex frameless execution Some compilers provide a way to compile functions so that they operate -without stack frames. (For example, the @code{@value{GCC}} option -@samp{-fomit-frame-pointer} generates functions without a frame.) +without stack frames. (For example, the @value{GCC} option +@example +@samp{-fomit-frame-pointer} +@end example +generates functions without a frame.) This is occasionally done with heavily used library functions to save the frame setup time. @value{GDBN} has limited facilities for dealing with these function invocations. If the innermost function invocation @@ -3636,7 +3693,7 @@ to another without printing the frame. This is the silent version of @code{frame}. @end table -@node Backtrace, Selection, Frames, Stack +@node Backtrace @section Backtraces @cindex backtraces @@ -3699,7 +3756,7 @@ The display for frame zero does not begin with a program counter value, indicating that your program has stopped at the beginning of the code for line @code{993} of @code{builtin.c}. -@node Selection, Frame Info, Backtrace, Stack +@node Selection @section Selecting a frame Most commands for examining the stack and other data in your program work on @@ -3785,7 +3842,7 @@ in @value{GDBN} command scripts, where the output might be unnecessary and distracting. @end table -@node Frame Info, , Selection, Stack +@node Frame Info @section Information about a frame There are several other commands to print information about the selected @@ -3861,7 +3918,7 @@ exception handlers, visit the associated frame (using the @code{up}, @end table -@node Source, Data, Stack, Top +@node Source @chapter Examining Source Files @value{GDBN} can print parts of your program's source, since the debugging @@ -3883,7 +3940,7 @@ prefer to use Emacs facilities to view source; see @ref{Emacs, ,Using * Machine Code:: Source and machine code @end menu -@node List, Search, Source, Source +@node List @section Printing source lines @kindex list @@ -4000,7 +4057,7 @@ Specifies the line containing the program address @var{address}. @var{address} may be any expression. @end table -@node Search, Source Path, List, Source +@node Search @section Searching source files @cindex searching @kindex reverse-search @@ -4026,7 +4083,7 @@ for @var{regexp}. It lists the line that is found. You can abbreviate this command as @code{rev}. @end table -@node Source Path, Machine Code, Search, Source +@node Source Path @section Specifying source directories @cindex source path @@ -4109,7 +4166,7 @@ directories you want in the source path. You can add all the directories in one command. @end enumerate -@node Machine Code, , Source Path, Source +@node Machine Code @section Source and machine code You can use the command @code{info line} to map source lines to program @@ -4210,7 +4267,7 @@ assemblers for x86-based targets. @end table -@node Data, Languages, Source, Top +@node Data @chapter Examining Data @cindex printing data @@ -4265,7 +4322,7 @@ Table}. * Floating Point Hardware:: Floating point hardware @end menu -@node Expressions, Variables, Data, Data +@node Expressions @section Expressions @cindex expressions @@ -4318,7 +4375,7 @@ a cast). This construct is allowed regardless of what kind of data is normally supposed to reside at @var{addr}. @end table -@node Variables, Arrays, Expressions, Data +@node Variables @section Program variables The most common kind of expression to use is the name of a variable @@ -4439,7 +4496,7 @@ Program or @sc{gnu} CC, gcc.info, Using @sc{gnu} CC}, for more information. -@node Arrays, Output Formats, Variables, Data +@node Arrays @section Artificial arrays @cindex artificial array @@ -4511,7 +4568,7 @@ p dtab[$i++]->fv @dots{} @end example -@node Output Formats, Memory, Arrays, Data +@node Output Formats @section Output formats @cindex formatted output @@ -4580,7 +4637,7 @@ To reprint the last value in the value history with a different format, you can use the @code{print} command with just a format and no expression. For example, @samp{p/x} reprints the last value in hex. -@node Memory, Auto Display, Output Formats, Data +@node Memory @section Examining memory You can use the command @code{x} (for ``examine'') to examine memory in @@ -4685,7 +4742,7 @@ If the @code{x} command has a repeat count, the address and contents saved are from the last memory unit printed; this is not the same as the last address printed if several units were printed on the last line of output. -@node Auto Display, Print Settings, Memory, Data +@node Auto Display @section Automatic display @cindex automatic display @cindex display of expressions @@ -4781,7 +4838,7 @@ there is no variable @code{last_char}---the display is disabled automatically. The next time your program stops where @code{last_char} is meaningful, you can enable the display expression once again. -@node Print Settings, Value History, Auto Display, Data +@node Print Settings @section Print settings @cindex format options @@ -5142,7 +5199,7 @@ Do not pretty print C++ virtual function tables. Show whether C++ virtual function tables are pretty printed, or not. @end table -@node Value History, Convenience Vars, Print Settings, Data +@node Value History @section Value history @cindex value history @@ -5219,7 +5276,7 @@ values are available, @code{show values +} produces no display. Pressing @key{RET} to repeat @code{show values @var{n}} has exactly the same effect as @samp{show values +}. -@node Convenience Vars, Registers, Value History, Data +@node Convenience Vars @section Convenience variables @cindex convenience variables @@ -5305,7 +5362,7 @@ On HP-UX systems, if you refer to a function or variable name that begins with a dollar sign, @value{GDBN} searches for a user or system name first, before it searches for a convenience variable. -@node Registers, Floating Point Hardware, Convenience Vars, Data +@node Registers @section Registers @cindex registers @@ -5404,7 +5461,7 @@ code generated by your compiler. If some registers are not saved, or if @value{GDBN} is unable to locate the saved registers, the selected stack frame makes no difference. -@node Floating Point Hardware, , Registers, Data +@node Floating Point Hardware @section Floating point hardware @cindex floating point @@ -5420,7 +5477,7 @@ floating point chip. Currently, @samp{info float} is supported on the ARM and x86 machines. @end table -@node Languages, Symbols, Data, Top +@node Languages @chapter Using @value{GDBN} with Different Languages @cindex languages @@ -5446,7 +5503,7 @@ language}. * Support:: Supported languages @end menu -@node Setting, Show, Languages, Languages +@node Setting @section Switching between source languages There are two ways to control the working language---either have @value{GDBN} @@ -5480,7 +5537,7 @@ program, and will display that source code, not the generated C code. * Automatically:: Having @value{GDBN} infer the source language @end menu -@node Filenames, Manually, Setting, Setting +@node Filenames @subsection List of filename extensions and languages If a source file name ends in one of the following extensions, then @@ -5520,7 +5577,7 @@ Assembler source file. This actually behaves almost like C, but In addition, you may set the language associated with a filename extension. @xref{Show, , Displaying the language}. -@node Manually, Automatically, Filenames, Setting +@node Manually @subsection Setting the working language If you allow @value{GDBN} to set the language automatically, @@ -5552,7 +5609,7 @@ might not have the effect you intended. In C, this means to add printed would be the value of @code{a}. In Modula-2, this means to compare @code{a} to the result of @code{b+c}, yielding a @code{BOOLEAN} value. -@node Automatically, , Manually, Setting +@node Automatically @subsection Having @value{GDBN} infer the source language To have @value{GDBN} set the working language automatically, use @@ -5571,7 +5628,7 @@ written in one source language can be used by a main program written in a different source language. Using @samp{set language auto} in this case frees you from having to set the working language manually. -@node Show, Checks, Setting, Languages +@node Show @section Displaying the language The following commands help you find out which language is the @@ -5613,7 +5670,7 @@ the source language @var{language}. List all the filename extensions and the associated languages. @end table -@node Checks, Support, Show, Languages +@node Checks @section Type and range checking @quotation @@ -5646,7 +5703,7 @@ for the default settings of supported languages. @cindex type checking @cindex checks, type -@node Type Checking, Range Checking, Checks, Checks +@node Type Checking @subsection An overview of type checking Some languages, such as Modula-2, are strongly typed, meaning that the @@ -5717,7 +5774,7 @@ is setting it automatically. @cindex range checking @cindex checks, range -@node Range Checking, , Type Checking, Checks +@node Range Checking @subsection An overview of range checking In some languages (such as Modula-2), it is an error to exceed the @@ -5776,7 +5833,7 @@ Show the current setting of the range checker, and whether or not it is being set automatically by @value{GDBN}. @end table -@node Support, , Checks, Languages +@node Support @section Supported languages @value{GDBN} supports C, C++, Fortran, Java, Chill, assembly, and Modula-2. @@ -5801,7 +5858,7 @@ language reference or tutorial. * Chill:: Chill @end menu -@node C, Modula-2, Support, Support +@node C @subsection C and C++ @cindex C and C++ @@ -5836,7 +5893,7 @@ CC, gcc.info, Using @sc{gnu} CC}, for more information. * Debugging C plus plus:: @value{GDBN} features for C++ @end menu -@node C Operators, C Constants, C, C +@node C Operators @subsubsection C and C++ operators @cindex C and C++ operators @@ -5996,7 +6053,7 @@ predefined meaning. * C Constants:: @end menu -@node C Constants, C plus plus expressions, C Operators, C +@node C Constants @subsubsection C and C++ constants @cindex C and C++ constants @@ -6064,7 +6121,7 @@ and @samp{@{&"hi", &"there", &"fred"@}} is a three-element array of pointers. * Debugging C:: @end menu -@node C plus plus expressions, C Defaults, C Constants, C +@node C plus plus expressions @subsubsection C++ expressions @cindex expressions in C++ @@ -6169,7 +6226,7 @@ calling virtual functions correctly, printing out virtual bases of objects, calling functions in a base subobject, casting objects, and invoking user-defined operators. -@node C Defaults, C Checks, C plus plus expressions, C +@node C Defaults @subsubsection C and C++ defaults @cindex C and C++ defaults @@ -6190,7 +6247,7 @@ for further details. @c unimplemented. If (b) changes, it might make sense to let this node @c appear even if Mod-2 does not, but meanwhile ignore it. roland 16jul93. -@node C Checks, Debugging C, C Defaults, C +@node C Checks @subsubsection C and C++ type and range checks @cindex C and C++ checks @@ -6222,7 +6279,7 @@ Range checking, if turned on, is done on mathematical operations. Array indices are not checked, since they are often used to index a pointer that is not itself an array. -@node Debugging C, Debugging C plus plus, C Checks, C +@node Debugging C @subsubsection @value{GDBN} and C The @code{set print union} and @code{show print union} commands apply to @@ -6238,7 +6295,7 @@ with pointers and a memory allocation function. @xref{Expressions, * Debugging C plus plus:: @end menu -@node Debugging C plus plus, , Debugging C, C +@node Debugging C plus plus @subsubsection @value{GDBN} features for C++ @cindex commands for C++ @@ -6321,7 +6378,7 @@ available choices, or to finish the type list for you. @xref{Completion,, Command completion}, for details on how to do this. @end table -@node Modula-2, Chill, C, Support +@node Modula-2 @subsection Modula-2 @cindex Modula-2, @value{GDBN} support @@ -6345,7 +6402,7 @@ table. * GDB/M2:: @value{GDBN} and Modula-2 @end menu -@node M2 Operators, Built-In Func/Proc, Modula-2, Modula-2 +@node M2 Operators @subsubsection Operators @cindex Modula-2 operators @@ -6469,7 +6526,7 @@ treats the use of the operator @code{IN}, or the use of operators @end quotation @cindex Modula-2 built-ins -@node Built-In Func/Proc, M2 Constants, M2 Operators, Modula-2 +@node Built-In Func/Proc @subsubsection Built-in functions and procedures Modula-2 also makes available several built-in procedures and functions. @@ -6581,7 +6638,7 @@ an error. @end quotation @cindex Modula-2 constants -@node M2 Constants, M2 Defaults, Built-In Func/Proc, Modula-2 +@node M2 Constants @subsubsection Constants @value{GDBN} allows you to express the constants of Modula-2 in the following @@ -6630,7 +6687,7 @@ Pointer constants consist of integral values only. Set constants are not yet supported. @end itemize -@node M2 Defaults, Deviations, M2 Constants, Modula-2 +@node M2 Defaults @subsubsection Modula-2 defaults @cindex Modula-2 defaults @@ -6644,7 +6701,7 @@ code compiled from a file whose name ends with @file{.mod} sets the working language to Modula-2. @xref{Automatically, ,Having @value{GDBN} set the language automatically}, for further details. -@node Deviations, M2 Checks, M2 Defaults, Modula-2 +@node Deviations @subsubsection Deviations from standard Modula-2 @cindex Modula-2, deviations from @@ -6674,7 +6731,7 @@ argument. All built-in procedures both modify @emph{and} return their argument. @end itemize -@node M2 Checks, M2 Scope, Deviations, Modula-2 +@node M2 Checks @subsubsection Modula-2 type and range checks @cindex Modula-2 checks @@ -6702,7 +6759,7 @@ whose types are not equivalent is an error. Range checking is done on all mathematical operations, assignment, array index bounds, and all built-in functions and procedures. -@node M2 Scope, GDB/M2, M2 Checks, Modula-2 +@node M2 Scope @subsubsection The scope operators @code{::} and @code{.} @cindex scope @kindex . @@ -6742,7 +6799,7 @@ an error if the identifier @var{id} was not imported from definition module @var{module}, or if @var{id} is not an identifier in @var{module}. -@node GDB/M2, , M2 Scope, Modula-2 +@node GDB/M2 @subsubsection @value{GDBN} and Modula-2 Some @value{GDBN} commands have little use when debugging Modula-2 programs. @@ -6763,7 +6820,7 @@ address can be specified by an integral constant, the construct In @value{GDBN} scripts, the Modula-2 inequality operator @code{#} is interpreted as the beginning of a comment. Use @code{<>} instead. -@node Chill, , Modula-2, Support +@node Chill @subsection Chill The extensions made to @value{GDBN} to support Chill only support output @@ -6785,7 +6842,7 @@ of @value{GDBN} which support these topics. * Chill defaults:: @end menu -@node How modes are displayed, Locations, Chill, Chill +@node How modes are displayed @subsubsection How modes are displayed The Chill Datatype- (Mode) support of @value{GDBN} is directly related @@ -6813,10 +6870,12 @@ type = SET (karli = 10, susi = 20, fritzi = 100) @end smallexample If the type is an unnumbered set the set element values are omitted. @item -@emph{Range Mode} which is displayed by @code{type = -( : )}, where @code{, } can be of any discrete literal expression (e.g. set element -names). +@emph{Range Mode} which is displayed by +@smallexample +@code{type = ( : )} +@end smallexample +where @code{, } can be of any discrete literal +expression (e.g. set element names). @end itemize @item @r{@emph{Powerset Mode:}} @@ -6852,11 +6911,17 @@ type, and is therefore not really of interest. @item @r{@emph{Synchronization Modes:}} @itemize @bullet @item -@emph{Event Mode} which is displayed by @code{EVENT ()}, +@emph{Event Mode} which is displayed by +@smallexample +@code{EVENT ()} +@end smallexample where @code{()} is optional. @item -@emph{Buffer Mode} which is displayed by @code{BUFFER () -}, where @code{()} is optional. +@emph{Buffer Mode} which is displayed by +@smallexample +@code{BUFFER ()} +@end smallexample +where @code{()} is optional. @end itemize @item @r{@emph{Timing Modes:}} @@ -6873,12 +6938,18 @@ Real Modes are predefined with @code{REAL} and @code{LONG_REAL}. @item @r{@emph{String Modes:}} @itemize @bullet @item -@emph{Character String Mode} which is displayed by @code{CHARS()}, followed by the keyword @code{VARYING} if the String Mode is -a varying mode +@emph{Character String Mode} which is displayed by +@smallexample +@code{CHARS()} +@end smallexample +followed by the keyword @code{VARYING} if the String Mode is a varying +mode @item -@emph{Bit String Mode} which is displayed by @code{BOOLS()}. +@emph{Bit String Mode} which is displayed by +@smallexample +@code{BOOLS()} +@end smallexample @end itemize @item @r{@emph{Array Mode:}} @@ -6914,7 +6985,7 @@ type = STRUCT ( @end smallexample @end table -@node Locations, Values and their Operations, How modes are displayed, Chill +@node Locations @subsubsection Locations and their accesses A location in Chill is an object which can contain values. @@ -6942,11 +7013,15 @@ represents the address where the reference points to. To access the value of the location referenced by the pointer, use the dereference operator @samp{->}. -Values of procedure mode locations are displayed by @code{@{ PROC +Values of procedure mode locations are displayed by +@smallexample +@code{@{ PROC ( ) @}
}. @code{} is a list of modes according to the -parameter specification of the procedure and @code{
} shows the -address of the entry point. +location>} +@end smallexample +@code{} is a list of modes according to the parameter +specification of the procedure and @code{
} shows the address of +the entry point. @ignore Locations of instance modes are displayed just like a structure with two @@ -6995,7 +7070,7 @@ therefore the result can be quite confusing. (@value{GDBP}) print int (s(3 up 4)) XXX TO be filled in !! XXX @end smallexample -@node Values and their Operations, Chill type and range checks, Locations, Chill +@node Values and their Operations @subsubsection Values and their Operations Values are used to alter locations, to investigate complex structures in @@ -7065,7 +7140,10 @@ same manner as in Chill programs refer to z200/88 chpt 5.2.5. @end itemize @item String Element Value -A string element value is specified by @code{()}, +A string element value is specified by +@smallexample +@code{()} +@end smallexample where @code{} is a integer expression. It delivers a character value which is equivalent to the character indexed by @code{} in the string. @@ -7103,7 +7181,11 @@ effects. This can lead to confusing results if used carelessly.}. Values of duration mode locations are represented by @code{ULONG} literals. -Values of time mode locations are represented by @code{TIME(:)}. +Values of time mode locations appear as +@smallexample +@code{TIME(:)} +@end smallexample + @ignore This is not implemented yet: @@ -7198,7 +7280,7 @@ Membership operator. @end table @end table -@node Chill type and range checks, Chill defaults, Values and their Operations, Chill +@node Chill type and range checks @subsubsection Chill type and range checks @value{GDBN} considers two Chill variables mode equivalent if the sizes @@ -7224,7 +7306,7 @@ off}. see last paragraph ? @end ignore -@node Chill defaults, , Chill type and range checks, Chill +@node Chill defaults @subsubsection Chill defaults If type and range checking are set automatically by @value{GDBN}, they @@ -7237,7 +7319,7 @@ code compiled from a file whose name ends with @file{.ch} sets the working language to Chill. @xref{Automatically, ,Having @value{GDBN} set the language automatically}, for further details. -@node Symbols, Altering, Languages, Top +@node Symbols @chapter Examining the Symbol Table The commands described in this chapter allow you to inquire about the @@ -7402,12 +7484,13 @@ Replace symbol definitions for the corresponding source file when an object file with a particular name is seen again. @item set symbol-reloading off -Do not replace symbol definitions when re-encountering object files of -the same name. This is the default state; if you are not running on a -system that permits automatically relinking modules, you should leave -@code{symbol-reloading} off, since otherwise @value{GDBN} may discard symbols -when linking large programs, that may contain several modules (from -different directories or libraries) with the same name. +Do not replace symbol definitions when encountering object files of the +same name more than once. This is the default state; if you are not +running on a system that permits automatic relinking of modules, you +should leave @code{symbol-reloading} off, since otherwise @value{GDBN} +may discard symbols when linking large programs, that may contain +several modules (from different directories or libraries) with the same +name. @kindex show symbol-reloading @item show symbol-reloading @@ -7459,7 +7542,7 @@ required for each object file from which @value{GDBN} has read some symbols. @value{GDBN} reads symbols (in the description of @code{symbol-file}). @end table -@node Altering, GDB Files, Symbols, Top +@node Altering @chapter Altering Execution Once you think you have found an error in your program, you might want to @@ -7481,7 +7564,7 @@ address, or even return prematurely from a function. * Patching:: Patching your program @end menu -@node Assignment, Jumping, Altering, Altering +@node Assignment @section Assignment to variables @cindex assignment @@ -7552,7 +7635,8 @@ $2 = 1 The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /home/smith/cc_progs/a.out -"/home/smith/cc_progs/a.out": can't open to read symbols: Invalid bfd target. +"/home/smith/cc_progs/a.out": can't open to read symbols: + Invalid bfd target. (@value{GDBP}) show g The current BFD target is "=4". @end group @@ -7587,7 +7671,7 @@ set @{int@}0x83040 = 4 @noindent stores the value 4 into that memory location. -@node Jumping, Signaling, Assignment, Altering +@node Jumping @section Continuing at a different address Ordinarily, when you continue your program, you do so at the place where @@ -7640,7 +7724,7 @@ that has already executed, in order to examine its execution in more detail. @c @group -@node Signaling, Returning, Jumping, Altering +@node Signaling @section Giving your program a signal @table @code @@ -7669,7 +7753,7 @@ the signal handling tables (@pxref{Signals}). The @code{signal} command passes the signal directly to your program. -@node Returning, Calling, Signaling, Altering +@node Returning @section Returning from a function @table @code @@ -7700,7 +7784,7 @@ returned. In contrast, the @code{finish} command (@pxref{Continuing and Stepping, ,Continuing and stepping}) resumes execution until the selected stack frame returns naturally. -@node Calling, Patching, Returning, Altering +@node Calling @section Calling program functions @cindex calling functions @@ -7722,7 +7806,7 @@ calls a function in the target. This is necessary because the usual method of putting the scratch area on the stack does not work in systems that have separate instruction and data spaces. -@node Patching, , Calling, Altering +@node Patching @section Patching programs @cindex patching binaries @@ -7757,7 +7841,7 @@ Display whether executable files and core files are opened for writing as well as reading. @end table -@node GDB Files, Targets, Altering, Top +@node GDB Files @chapter @value{GDBN} Files @value{GDBN} needs to know the file name of the program to be debugged, @@ -7770,7 +7854,7 @@ program. To debug a core dump of a previous run, you must also tell * Symbol Errors:: Errors reading symbol files @end menu -@node Files, Symbol Errors, GDB Files, GDB Files +@node Files @section Commands to specify files @cindex symbol table @@ -7799,7 +7883,7 @@ directories to search, just as the shell does when looking for a program to run. You can change the value of this variable, for both @value{GDBN} and your program, using the @code{path} command. -On systems with memory-mapped files, an auxiliary file +On systems with memory-mapped files, an auxiliary file named @file{@var{filename}.syms} may hold symbol table information for @var{filename}. If so, @value{GDBN} maps in the symbol table from @file{@var{filename}.syms}, starting up more quickly. See the @@ -8050,7 +8134,7 @@ Otherwise, symbols must be loaded manually, using the Display the current autoloading size threshold, in megabytes. @end table -@node Symbol Errors, , Files, GDB Files +@node Symbol Errors @section Errors reading symbol files While reading a symbol file, @value{GDBN} occasionally encounters problems, @@ -8139,7 +8223,7 @@ it. @end table -@node Targets, Configurations, GDB Files, Top +@node Targets @chapter Specifying a Debugging Target @cindex debugging target @@ -8165,7 +8249,7 @@ command to specify one of the target types configured for @value{GDBN} @end menu -@node Active Targets, Target Commands, Targets, Targets +@node Active Targets @section Active targets @cindex stacking targets @@ -8200,7 +8284,7 @@ files}). To specify as a target a process that is already running, use the @code{attach} command (@pxref{Attach, ,Debugging an already-running process}). -@node Target Commands, Byte Order, Active Targets, Targets +@node Target Commands @section Commands for managing targets @table @code @@ -8332,7 +8416,7 @@ specifies a fixed address. @code{load} does not repeat if you press @key{RET} again after using it. @end table -@node Byte Order, Remote, Target Commands, Targets +@node Byte Order @section Choosing target byte order @cindex choosing target byte order @@ -8372,7 +8456,7 @@ Note that these commands merely adjust interpretation of symbolic data on the host, and that they have absolutely no effect on the target system. -@node Remote, KOD, Byte Order, Targets +@node Remote @section Remote debugging @cindex remote debugging @@ -8396,7 +8480,7 @@ configuration of @value{GDBN}; use @code{help target} to list them. * Remote Serial:: @value{GDBN} remote serial protocol @end menu -@node Remote Serial, , Remote, Remote +@node Remote Serial @subsection The @value{GDBN} remote serial protocol @cindex remote serial debugging, overview @@ -8494,7 +8578,7 @@ recently added stubs. * NetWare:: Using the `gdbserve.nlm' program @end menu -@node Stub Contents, Bootstrapping, Remote Serial, Remote Serial +@node Stub Contents @subsubsection What the stub can do for you @cindex remote serial stub @@ -8545,7 +8629,7 @@ to make certain your program stops at a predetermined point for the start of your debugging session. @end table -@node Bootstrapping, Debug Session, Stub Contents, Remote Serial +@node Bootstrapping @subsubsection What you must do for the stub @cindex remote stub, support routines @@ -8636,7 +8720,7 @@ but in general the stubs are likely to use any of the common library subroutines which @code{@value{GCC}} generates as inline code. -@node Debug Session, Protocol, Bootstrapping, Remote Serial +@node Debug Session @subsubsection Putting it all together @cindex remote serial debugging summary @@ -8645,7 +8729,7 @@ steps. @enumerate @item -Make sure you have the supporting low-level routines +Make sure you have defined the supporting low-level routines (@pxref{Bootstrapping,,What you must do for the stub}): @display @code{getDebugChar}, @code{putDebugChar}, @@ -8742,7 +8826,7 @@ If you type @kbd{y}, @value{GDBN} abandons the remote debugging session. remote} again to connect once more.) If you type @kbd{n}, @value{GDBN} goes back to waiting. -@node Protocol, Server, Debug Session, Remote Serial +@node Protocol @subsubsection Communication protocol @cindex debugging stub, example @@ -9264,7 +9348,7 @@ bytes. For a software breakpoint, @var{length} specifies the size of the instruction to be patched. For hardware breakpoints and watchpoints @var{length} specifies the memory region to be monitored. To avoid potential problems with duplicate packets, the operations should be -implemented in an ident-potentent way. +implemented in an idempotent way. @item @tab reply @code{E}@var{NN} @tab for an error @@ -9312,14 +9396,14 @@ applicable for certains sorts of targets. @tab The process terminated with signal @var{AA}. -@item @code{N}@var{AA}@code{;}@var{tttttttt}@code{;}@var{dddddddd}@code{;}@var{bbbbbbbb} @strong{(obsolete)} +@item @code{N}@var{AA}@code{;}@var{t...}@code{;}@var{d...}@code{;}@var{b...} @strong{(obsolete)} @tab -@var{AA} = signal number; @var{tttttttt} = address of symbol "_start"; -@var{dddddddd} = base of data section; @var{bbbbbbbb} = base of bss -section. @emph{Note: only used by Cisco Systems targets. The difference -between this reply and the "qOffsets" query is that the 'N' packet may -arrive spontaneously whereas the 'qOffsets' is a query initiated by the -host debugger.} +@var{AA} = signal number; @var{t...} = address of symbol "_start"; +@var{d...} = base of data section; @var{b...} = base of bss section. +@emph{Note: only used by Cisco Systems targets. The difference between +this reply and the "qOffsets" query is that the 'N' packet may arrive +spontaneously whereas the 'qOffsets' is a query initiated by the host +debugger.} @item @code{O}@var{XX...} @tab @@ -9536,7 +9620,7 @@ Example sequence of a target being stepped by a single instruction: <- @code{+} @end example -@node Server, NetWare, Protocol, Remote Serial +@node Server @subsubsection Using the @code{gdbserver} program @kindex gdbserver @@ -9638,7 +9722,7 @@ text depends on the host system, but which usually looks something like @samp{Connection refused}. @end table -@node NetWare, , Server, Remote Serial +@node NetWare @subsubsection Using the @code{gdbserve.nlm} program @kindex gdbserve.nlm @@ -9695,7 +9779,7 @@ argument is a device name (usually a serial device, like communications with the server via serial line @file{/dev/ttyb}. @end table -@node KOD, , Remote, Targets +@node KOD @section Kernel Object Display @cindex kernel object display @@ -9734,7 +9818,7 @@ There is currently no way to determine whether a given operating system is supported other than to try it. -@node Configurations, Controlling GDB, Targets, Top +@node Configurations @chapter Configuration-Specific Information While nearly all @value{GDBN} commands are available for all native and @@ -9754,7 +9838,7 @@ are quite different from each other. * Architectures:: @end menu -@node Native, Embedded OS, Configurations, Configurations +@node Native @section Native This section describes details specific to particular native @@ -9765,14 +9849,14 @@ configurations. * SVR4 Process Information:: SVR4 process information @end menu -@node HP-UX, SVR4 Process Information, Native, Native +@node HP-UX @subsection HP-UX On HP-UX systems, if you refer to a function or variable name that begins with a dollar sign, @value{GDBN} searches for a user or system name first, before it searches for a convenience variable. -@node SVR4 Process Information, , HP-UX, Native +@node SVR4 Process Information @subsection SVR4 process information @kindex /proc @@ -9817,7 +9901,7 @@ received. Show all the above information about the process. @end table -@node Embedded OS, Embedded Processors, Native, Configurations +@node Embedded OS @section Embedded Operating Systems This section describes configurations involving the debugging of @@ -9831,7 +9915,7 @@ architectures. @value{GDBN} includes the ability to debug programs running on various real-time operating systems. -@node VxWorks, , Embedded OS, Embedded OS +@node VxWorks @subsection Using @value{GDBN} with VxWorks @cindex VxWorks @@ -9898,7 +9982,7 @@ run @value{GDBN}. From your Unix host, run @code{@value{GDBP}} (or * VxWorks Attach:: Running tasks @end menu -@node VxWorks Connection, VxWorks Download, VxWorks, VxWorks +@node VxWorks Connection @subsubsection Connecting to VxWorks The @value{GDBN} command @code{target} lets you connect to a VxWorks target on the @@ -9931,7 +10015,7 @@ When this happens, add the appropriate directory to the search path with the @value{GDBN} command @code{path}, and execute the @code{target} command again. -@node VxWorks Download, VxWorks Attach, VxWorks Connection, VxWorks +@node VxWorks Download @subsubsection VxWorks download @cindex download to VxWorks @@ -9977,7 +10061,7 @@ history. (This is necessary in order to preserve the integrity of debugger's data structures that reference the target system's symbol table.) -@node VxWorks Attach, , VxWorks Download, VxWorks +@node VxWorks Attach @subsubsection Running tasks @cindex running VxWorks tasks @@ -9993,7 +10077,7 @@ where @var{task} is the VxWorks hexadecimal task ID. The task can be running or suspended when you attach to it. Running tasks are suspended at the time of attachment. -@node Embedded Processors, Architectures, Embedded OS, Configurations +@node Embedded Processors @section Embedded Processors This section goes into details specific to particular embedded @@ -10018,7 +10102,7 @@ configurations. * Z8000:: Zilog Z8000 @end menu -@node A29K Embedded, ARM, Embedded Processors, Embedded Processors +@node A29K Embedded @subsection AMD A29K Embedded @menu @@ -10046,7 +10130,7 @@ name of the program to be debugged, as it appears to DOS on the PC. @end table -@node A29K UDI, A29K EB29K, A29K Embedded, A29K Embedded +@node A29K UDI @subsubsection A29K UDI @cindex UDI @@ -10070,7 +10154,7 @@ working directory, you must set the environment variable @samp{UDICONF} to its pathname. @end table -@node A29K EB29K, Comms (EB29K), A29K UDI, A29K Embedded +@node A29K EB29K @subsubsection EBMON protocol for AMD29K @cindex EB29K board @@ -10085,7 +10169,7 @@ board) and a serial port on the Unix system. In the following, we assume you've hooked the cable between the PC's @file{COM1} port and @file{/dev/ttya} on the Unix system. -@node Comms (EB29K), gdb-EB29K, A29K EB29K, A29K Embedded +@node Comms (EB29K) @subsubsection Communications setup The next step is to set up the PC's port, by doing something like this @@ -10207,7 +10291,7 @@ other way---perhaps floppy-disk transfer---of getting the 29K program from the Unix system to the PC; @value{GDBN} does @emph{not} download it over the serial line. -@node gdb-EB29K, Remote Log, Comms (EB29K), A29K Embedded +@node gdb-EB29K @subsubsection EB29K cross-debugging Finally, @code{cd} to the directory containing an image of your 29K @@ -10251,7 +10335,7 @@ once again, after your @value{GDBN} session has concluded, to attach to Type @kbd{CTTY con} to return command input to the main DOS console, and type @kbd{~.} to leave @code{tip} or @code{cu}. -@node Remote Log, , gdb-EB29K, A29K Embedded +@node Remote Log @subsubsection Remote log @kindex eb.log @cindex log file for EB29K @@ -10263,7 +10347,7 @@ of the commands sent to it. Running @samp{tail -f} on this file in another window often helps to understand trouble with @code{EBMON}, or unexpected events on the PC side of the connection. -@node ARM, H8/300, A29K Embedded, Embedded Processors +@node ARM @subsection ARM @table @code @@ -10280,7 +10364,7 @@ ARM Demon monitor. @end table -@node H8/300, H8/500, ARM, Embedded Processors +@node H8/300 @subsection Hitachi H8/300 @table @code @@ -10337,7 +10421,7 @@ what speed to use over the serial device. * Hitachi Special:: Special @value{GDBN} commands for Hitachi micros. @end menu -@node Hitachi Boards, Hitachi ICE, H8/300, H8/300 +@node Hitachi Boards @subsubsection Connecting to Hitachi boards @c only for Unix hosts @@ -10450,7 +10534,7 @@ to detect program completion. In either case, @value{GDBN} sees the effect of a @sc{reset} on the development board as a ``normal exit'' of your program. -@node Hitachi ICE, Hitachi Special, Hitachi Boards, H8/300 +@node Hitachi ICE @subsubsection Using the E7000 in-circuit emulator @kindex target e7000@r{, with Hitachi ICE} @@ -10470,7 +10554,7 @@ If your E7000 is installed as a host on a TCP/IP network, you can just specify its hostname; @value{GDBN} uses @code{telnet} to connect. @end table -@node Hitachi Special, , Hitachi ICE, H8/300 +@node Hitachi Special @subsubsection Special @value{GDBN} commands for Hitachi micros Some @value{GDBN} commands are available only for the H8/300: @@ -10487,7 +10571,7 @@ to check which variant is currently in effect. @end table -@node H8/500, i960, H8/300, Embedded Processors +@node H8/500 @subsection H8/500 @table @code @@ -10503,7 +10587,7 @@ memory}. The accepted values for @var{mod} are @code{small}, @end table -@node i960, M32R/D, H8/500, Embedded Processors +@node i960 @subsection Intel i960 @table @code @@ -10556,7 +10640,7 @@ downloads @var{filename} to the 960 as well as adding its symbols in * Nindy Reset:: Nindy reset command @end menu -@node Nindy Startup, Nindy Options, i960, i960 +@node Nindy Startup @subsubsection Startup with Nindy If you simply start @code{@value{GDBP}} without using any command-line @@ -10574,7 +10658,7 @@ simply start up with no Nindy connection by responding to the prompt with an empty line. If you do this and later wish to attach to Nindy, use @code{target} (@pxref{Target Commands, ,Commands for managing targets}). -@node Nindy Options, Nindy Reset, Nindy Startup, i960 +@node Nindy Options @subsubsection Options for Nindy These are the startup options for beginning your @value{GDBN} session with a @@ -10617,7 +10701,7 @@ The standard @samp{-b} option controls the line speed used on the serial port. @c @group -@node Nindy Reset, , Nindy Options, i960 +@node Nindy Reset @subsubsection Nindy reset command @table @code @@ -10630,7 +10714,7 @@ a break is detected. @end table @c @end group -@node M32R/D, M68K, i960, Embedded Processors +@node M32R/D @subsection Mitsubishi M32R/D @table @code @@ -10641,7 +10725,7 @@ Mitsubishi M32R/D ROM monitor. @end table -@node M68K, M88K, M32R/D, Embedded Processors +@node M68K @subsection M68k The Motorola m68k configuration includes ColdFire support, and @@ -10692,7 +10776,7 @@ ROMBUG ROM monitor for OS/9000. @end table -@node M88K, MIPS Embedded, M68K, Embedded Processors +@node M88K @subsection M88K @table @code @@ -10703,7 +10787,7 @@ BUG monitor, running on a MVME187 (m88k) board. @end table -@node MIPS Embedded, PowerPC, M88K, Embedded Processors +@node MIPS Embedded @subsection MIPS Embedded @cindex MIPS boards @@ -10847,7 +10931,7 @@ forever because it has no way of knowing how long the program is going to run before stopping. @end table -@node PowerPC, PA, MIPS Embedded, Embedded Processors +@node PowerPC @subsection PowerPC @table @code @@ -10868,7 +10952,7 @@ SDS monitor, running on a PowerPC board (such as Motorola's ADS). @end table -@node PA, SH, PowerPC, Embedded Processors +@node PA @subsection HP PA Embedded @table @code @@ -10883,7 +10967,7 @@ W89K monitor, running on a Winbond HPPA board. @end table -@node SH, Sparclet, PA, Embedded Processors +@node SH @subsection Hitachi SH @table @code @@ -10906,7 +10990,7 @@ Hitachi SH-3 and SH-3E target systems. @end table -@node Sparclet, Sparclite, SH, Embedded Processors +@node Sparclet @subsection Tsqware Sparclet @cindex Sparclet @@ -10960,7 +11044,7 @@ run @value{GDBN}. From your Unix host, run @code{@value{GDBP}} * Sparclet Execution:: Running and debugging @end menu -@node Sparclet File, Sparclet Connection, Sparclet, Sparclet +@node Sparclet File @subsubsection Setting file to debug The @value{GDBN} command @code{file} lets you choose with program to debug. @@ -10990,7 +11074,7 @@ When this happens, add the appropriate directories to the search paths with the @value{GDBN} commands @code{path} and @code{dir}, and execute the @code{target} command again. -@node Sparclet Connection, Sparclet Download, Sparclet File, Sparclet +@node Sparclet Connection @subsubsection Connecting to Sparclet The @value{GDBN} command @code{target} lets you connect to a Sparclet target. @@ -11009,7 +11093,7 @@ main () at ../prog.c:3 Connected to ttya. @end example -@node Sparclet Download, Sparclet Execution, Sparclet Connection, Sparclet +@node Sparclet Download @subsubsection Sparclet download @cindex download to Sparclet @@ -11035,7 +11119,7 @@ If the code is loaded at a different address then what the program was linked to, you may need to use the @code{section} and @code{add-symbol-file} commands to tell @value{GDBN} where to map the symbol table. -@node Sparclet Execution, , Sparclet Download, Sparclet +@node Sparclet Execution @subsubsection Running and debugging @cindex running and debugging Sparclet programs @@ -11055,7 +11139,7 @@ Breakpoint 1, main (argc=1, argv=0xeffff21c) at prog.c:3 (gdbslet) @end example -@node Sparclite, ST2000, Sparclet, Embedded Processors +@node Sparclite @subsection Fujitsu Sparclite @table @code @@ -11069,7 +11153,7 @@ remote protocol. @end table -@node ST2000, Z8000, Sparclite, Embedded Processors +@node ST2000 @subsection Tandem ST2000 @value{GDBN} may be used with a Tandem ST2000 phone switch, running Tandem's @@ -11118,7 +11202,7 @@ sequences gets you back to the @value{GDBN} command prompt: @kbd{@key{RET}~@key{C-d}} (Return, followed by tilde and control-D). @end table -@node Z8000, , ST2000, Embedded Processors +@node Z8000 @subsection Zilog Z8000 @cindex Z8000 @@ -11169,7 +11253,7 @@ conventions; for example, @w{@samp{b fputc if $cycles>5000}} sets a conditional breakpoint that suspends only after at least 5000 simulated clock ticks. -@node Architectures, , Embedded Processors, Configurations +@node Architectures @section Architectures This section describes characteristics of architectures that affect @@ -11181,7 +11265,7 @@ all uses of @value{GDBN} with the architecture, both native and cross. * MIPS:: @end menu -@node A29K, Alpha, Architectures, Architectures +@node A29K @subsection A29K @table @code @@ -11207,12 +11291,12 @@ processors. @end table -@node Alpha, MIPS, A29K, Architectures +@node Alpha @subsection Alpha See the following section. -@node MIPS, , Alpha, Architectures +@node MIPS @subsection MIPS @cindex stack on Alpha @@ -11247,7 +11331,7 @@ These commands are available @emph{only} when @value{GDBN} is configured for debugging programs on Alpha or MIPS processors. -@node Controlling GDB, Sequences, Configurations, Top +@node Controlling GDB @chapter Controlling @value{GDBN} You can alter the way @value{GDBN} interacts with you by using the @@ -11265,7 +11349,7 @@ described here. * Debugging Output:: Optional messages about internal happenings @end menu -@node Prompt, Editing, Controlling GDB, Controlling GDB +@node Prompt @section Prompt @cindex prompt @@ -11291,7 +11375,7 @@ Directs @value{GDBN} to use @var{newprompt} as its prompt string henceforth. Prints a line of the form: @samp{Gdb's prompt is: @var{your-prompt}} @end table -@node Editing, History, Prompt, Controlling GDB +@node Editing @section Command editing @cindex readline @cindex command line editing @@ -11321,7 +11405,7 @@ Disable command line editing. Show whether command line editing is enabled. @end table -@node History, Screen Size, Editing, Controlling GDB +@node History @section Command history @value{GDBN} can keep track of the commands you type during your @@ -11418,7 +11502,7 @@ Print ten commands centered on command number @var{n}. Print ten commands just after the commands last printed. @end table -@node Screen Size, Numbers, History, Controlling GDB +@node Screen Size @section Screen size @cindex size of screen @cindex pauses in output @@ -11460,7 +11544,7 @@ Likewise, you can specify @samp{set width 0} to prevent @value{GDBN} from wrapping its output. @end table -@node Numbers, Messages/Warnings, Screen Size, Controlling GDB +@node Numbers @section Numbers @cindex number representation @cindex entering numbers @@ -11507,7 +11591,7 @@ Display the current default base for numeric input. Display the current default base for numeric display. @end table -@node Messages/Warnings, Debugging Output , Numbers, Controlling GDB +@node Messages/Warnings @section Optional warnings and messages By default, @value{GDBN} is silent about its inner workings. If you are @@ -11583,7 +11667,7 @@ Displays state of confirmation requests. @end table -@node Debugging Output, ,Messages/Warnings, Controlling GDB +@node Debugging Output @section Optional messages about internal happenings @table @code @kindex set debug arch @@ -11654,7 +11738,7 @@ Displays the current state of displaying @value{GDBN} variable object debugging info. @end table -@node Sequences, Emacs, Controlling GDB, Top +@node Sequences @chapter Canned Sequences of Commands Aside from breakpoint commands (@pxref{Break Commands, ,Breakpoint @@ -11669,7 +11753,7 @@ files. * Output:: Commands for controlled output @end menu -@node Define, Hooks, Sequences, Sequences +@node Define @section User-defined commands @cindex user-defined command @@ -11762,7 +11846,7 @@ without asking when used inside a user-defined command. Many @value{GDBN} commands that normally print messages to say what they are doing omit the messages when used in a user-defined command. -@node Hooks, Command Files, Define, Sequences +@node Hooks @section User-defined command hooks @cindex command hooks @cindex hooks, for commands @@ -11808,7 +11892,7 @@ If an error occurs during the execution of your hook, execution of If you try to define a hook which does not match any known command, you get a warning from the @code{define} command. -@node Command Files, Output, Hooks, Sequences +@node Command Files @section Command files @cindex command files @@ -11871,7 +11955,7 @@ without asking when used in a command file. Many @value{GDBN} commands that normally print messages to say what they are doing omit the messages when called from command files. -@node Output, , Command Files, Sequences +@node Output @section Commands for controlled output During the execution of a command file or a user-defined command, normal @@ -11951,7 +12035,7 @@ string are the simple ones that consist of backslash followed by a letter. @end table -@node Emacs, Annotations, Sequences, Top +@node Emacs @chapter Using @value{GDBN} under @sc{gnu} Emacs @cindex Emacs @@ -12125,11 +12209,11 @@ environment. Users of this environment can use a new command, each value is printed in its own window. @end ignore -@node Annotations, GDB Bugs, Emacs, Top +@node Annotations @chapter @value{GDBN} Annotations @include annotate.texi -@node GDB Bugs, Command Line Editing, Annotations, Top +@node GDB Bugs @chapter Reporting Bugs in @value{GDBN} @cindex bugs in @value{GDBN} @cindex reporting bugs in @value{GDBN} @@ -12149,7 +12233,7 @@ information that enables us to fix the bug. * Bug Reporting:: How to report bugs @end menu -@node Bug Criteria, Bug Reporting, GDB Bugs, GDB Bugs +@node Bug Criteria @section Have you found a bug? @cindex bug criteria @@ -12181,7 +12265,7 @@ If you are an experienced user of debugging tools, your suggestions for improvement of @value{GDBN} are welcome in any case. @end itemize -@node Bug Reporting, , Bug Criteria, GDB Bugs +@node Bug Reporting @section How to report bugs @cindex bug reports @cindex @value{GDBN} bugs, reporting @@ -12371,17 +12455,17 @@ things without first using the debugger to find the facts. @c Use -I with makeinfo to point to the appropriate directory, @c environment var TEXINPUTS with TeX. -@node Command Line Editing, Using History Interactively, GDB Bugs, Top +@node Command Line Editing @chapter Command Line Editing @include rluser.texinfo -@node Using History Interactively, Formatting Documentation, Command Line Editing, Top +@node Using History Interactively @chapter Using History Interactively @include inc-hist.texinfo -@node Formatting Documentation, Installing GDB, Using History Interactively, Top +@node Formatting Documentation @appendix Formatting Documentation @cindex @value{GDBN} reference card @@ -12467,7 +12551,7 @@ make gdb.dvi Then give @file{gdb.dvi} to your @sc{dvi} printing program. -@node Installing GDB, Index, Formatting Documentation, Top +@node Installing GDB @appendix Installing @value{GDBN} @cindex configuring @value{GDBN} @cindex installation @@ -12587,7 +12671,7 @@ let @value{GDBN} debug child processes whose programs are not readable. * Configure Options:: Summary of options for configure @end menu -@node Separate Objdir, Config Names, Installing GDB, Installing GDB +@node Separate Objdir @section Compiling @value{GDBN} in another directory If you want to run @value{GDBN} versions for several host or target machines, @@ -12648,7 +12732,7 @@ directories, you can run @code{make} on them in parallel (for example, if they are NFS-mounted on each of the hosts); they will not interfere with each other. -@node Config Names, Configure Options, Separate Objdir, Installing GDB +@node Config Names @section Specifying names for hosts and targets The specifications used for hosts and targets in the @code{configure} @@ -12690,7 +12774,7 @@ Invalid configuration `i986v': machine `i986v' not recognized @code{config.sub} is also distributed in the @value{GDBN} source directory (@file{gdb-@value{GDBVN}}, for version @value{GDBVN}). -@node Configure Options, , Config Names, Installing GDB +@node Configure Options @section @code{configure} options Here is a summary of the @code{configure} options and arguments that @@ -12759,7 +12843,7 @@ There is no convenient way to generate a list of all available hosts. There are many other options available as well, but they are generally needed for special purposes only. -@node Index, , Installing GDB, Top +@node Index @unnumbered Index @printindex cp -- 2.30.2