\input texinfo @c -*-texinfo-*-
-@c Copyright 1988-1999
+@c Copyright 1988-2000
@c Free Software Foundation, Inc.
@c
@c %**start of header
@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.
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
}
@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.
@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.
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
* 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
* 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
* 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}
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
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}.
(@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.
* 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,
* 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
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
@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}
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
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
* 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
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
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
@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
@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
* 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
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
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)
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)
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)
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
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
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
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
@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
@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
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
* 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
* 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?
@end table
-@node Set Watchpoints, Set Catchpoints, Set Breaks, Breakpoints
+@node Set Watchpoints
@subsection Setting watchpoints
@cindex setting watchpoints
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
raised.
-@node Delete Breaks, Disabling, Set Catchpoints, Breakpoints
+@node Delete Breaks
@subsection Deleting breakpoints
@cindex clearing breakpoints, watchpoints, catchpoints
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
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
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
end
@end example
-@node Breakpoint Menus, Error in Breakpoints, Break Commands, Breakpoints
+@node Breakpoint Menus
@subsection Breakpoint menus
@cindex overloading
@cindex symbol overloading
@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.
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
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
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
@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
@end menu
-@node Frames, Backtrace, Stack, Stack
+@node Frames
@section Stack frames
@cindex frame, definition
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
@code{frame}.
@end table
-@node Backtrace, Selection, Frames, Stack
+@node Backtrace
@section Backtraces
@cindex backtraces
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
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
@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
* Machine Code:: Source and machine code
@end menu
-@node List, Search, Source, Source
+@node List
@section Printing source lines
@kindex list
@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
this command as @code{rev}.
@end table
-@node Source Path, Machine Code, Search, Source
+@node Source Path
@section Specifying source directories
@cindex source path
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
@end table
-@node Data, Languages, Source, Top
+@node Data
@chapter Examining Data
@cindex printing data
* Floating Point Hardware:: Floating point hardware
@end menu
-@node Expressions, Variables, Data, Data
+@node Expressions
@section Expressions
@cindex expressions
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
information.
-@node Arrays, Output Formats, Variables, Data
+@node Arrays
@section Artificial arrays
@cindex artificial array
@dots{}
@end example
-@node Output Formats, Memory, Arrays, Data
+@node Output Formats
@section Output formats
@cindex formatted output
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
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
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
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
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
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
@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
the ARM and x86 machines.
@end table
-@node Languages, Symbols, Data, Top
+@node Languages
@chapter Using @value{GDBN} with Different Languages
@cindex languages
* 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}
* 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
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,
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
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
List all the filename extensions and the associated languages.
@end table
-@node Checks, Support, Show, Languages
+@node Checks
@section Type and range checking
@quotation
@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
@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
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.
* Chill:: Chill
@end menu
-@node C, Modula-2, Support, Support
+@node C
@subsection C and C++
@cindex C and C++
* 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
* 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
* 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++
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
@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
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
* 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++
@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
* 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
@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.
@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
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
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
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
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 .
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.
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
* 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
@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 = <basemode>
-(<lower bound> : <upper bound>)}, where @code{<lower bound>, <upper
-bound>} can be of any discrete literal expression (e.g. set element
-names).
+@emph{Range Mode} which is displayed by
+@smallexample
+@code{type = <basemode>(<lower bound> : <upper bound>)}
+@end smallexample
+where @code{<lower bound>, <upper bound>} can be of any discrete literal
+expression (e.g. set element names).
@end itemize
@item @r{@emph{Powerset Mode:}}
@item @r{@emph{Synchronization Modes:}}
@itemize @bullet
@item
-@emph{Event Mode} which is displayed by @code{EVENT (<event length>)},
+@emph{Event Mode} which is displayed by
+@smallexample
+@code{EVENT (<event length>)}
+@end smallexample
where @code{(<event length>)} is optional.
@item
-@emph{Buffer Mode} which is displayed by @code{BUFFER (<buffer length>)
-<buffer element mode>}, where @code{(<buffer length>)} is optional.
+@emph{Buffer Mode} which is displayed by
+@smallexample
+@code{BUFFER (<buffer length>)<buffer element mode>}
+@end smallexample
+where @code{(<buffer length>)} is optional.
@end itemize
@item @r{@emph{Timing Modes:}}
@item @r{@emph{String Modes:}}
@itemize @bullet
@item
-@emph{Character String Mode} which is displayed by @code{CHARS(<string
-length>)}, 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(<string length>)}
+@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(<string
-length>)}.
+@emph{Bit String Mode} which is displayed by
+@smallexample
+@code{BOOLS(<string
+length>)}
+@end smallexample
@end itemize
@item @r{@emph{Array Mode:}}
@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.
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
(<argument modes> ) <return mode> @} <address> <name of procedure
-location>}. @code{<argument modes>} is a list of modes according to the
-parameter specification of the procedure and @code{<address>} shows the
-address of the entry point.
+location>}
+@end smallexample
+@code{<argument modes>} is a list of modes according to the parameter
+specification of the procedure and @code{<address>} shows the address of
+the entry point.
@ignore
Locations of instance modes are displayed just like a structure with two
(@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
@end itemize
@item String Element Value
-A string element value is specified by @code{<string value>(<index>)},
+A string element value is specified by
+@smallexample
+@code{<string value>(<index>)}
+@end smallexample
where @code{<index>} is a integer expression. It delivers a character
value which is equivalent to the character indexed by @code{<index>} in
the string.
Values of duration mode locations are represented by @code{ULONG} literals.
-Values of time mode locations are represented by @code{TIME(<secs>:<nsecs>)}.
+Values of time mode locations appear as
+@smallexample
+@code{TIME(<secs>:<nsecs>)}
+@end smallexample
+
@ignore
This is not implemented yet:
@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
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
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
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
@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
* Patching:: Patching your program
@end menu
-@node Assignment, Jumping, Altering, Altering
+@node Assignment
@section Assignment to variables
@cindex assignment
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
@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
detail.
@c @group
-@node Signaling, Returning, Jumping, Altering
+@node Signaling
@section Giving your program a signal
@table @code
passes the signal directly to your program.
-@node Returning, Calling, Signaling, Altering
+@node Returning
@section Returning from a function
@table @code
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
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
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,
* 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
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
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,
@end table
-@node Targets, Configurations, GDB Files, Top
+@node Targets
@chapter Specifying a Debugging Target
@cindex debugging target
@end menu
-@node Active Targets, Target Commands, Targets, Targets
+@node Active Targets
@section Active targets
@cindex stacking targets
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
@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
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
* 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
* 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
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
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
@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},
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
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
@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
<- @code{+}
@end example
-@node Server, NetWare, Protocol, Remote Serial
+@node Server
@subsubsection Using the @code{gdbserver} program
@kindex gdbserver
@samp{Connection refused}.
@end table
-@node NetWare, , Server, Remote Serial
+@node NetWare
@subsubsection Using the @code{gdbserve.nlm} program
@kindex gdbserve.nlm
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
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
* Architectures::
@end menu
-@node Native, Embedded OS, Configurations, Configurations
+@node Native
@section Native
This section describes details specific to particular native
* 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
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
@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
* 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
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
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
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
* Z8000:: Zilog Z8000
@end menu
-@node A29K Embedded, ARM, Embedded Processors, Embedded Processors
+@node A29K Embedded
@subsection AMD A29K Embedded
@menu
@end table
-@node A29K UDI, A29K EB29K, A29K Embedded, A29K Embedded
+@node A29K UDI
@subsubsection A29K UDI
@cindex UDI
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
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
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
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
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
@end table
-@node H8/300, H8/500, ARM, Embedded Processors
+@node H8/300
@subsection Hitachi H8/300
@table @code
* 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
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}
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:
@end table
-@node H8/500, i960, H8/300, Embedded Processors
+@node H8/500
@subsection H8/500
@table @code
@end table
-@node i960, M32R/D, H8/500, Embedded Processors
+@node i960
@subsection Intel i960
@table @code
* 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
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
port.
@c @group
-@node Nindy Reset, , Nindy Options, i960
+@node Nindy Reset
@subsubsection Nindy reset command
@table @code
@end table
@c @end group
-@node M32R/D, M68K, i960, Embedded Processors
+@node M32R/D
@subsection Mitsubishi M32R/D
@table @code
@end table
-@node M68K, M88K, M32R/D, Embedded Processors
+@node M68K
@subsection M68k
The Motorola m68k configuration includes ColdFire support, and
@end table
-@node M88K, MIPS Embedded, M68K, Embedded Processors
+@node M88K
@subsection M88K
@table @code
@end table
-@node MIPS Embedded, PowerPC, M88K, Embedded Processors
+@node MIPS Embedded
@subsection MIPS Embedded
@cindex MIPS boards
to run before stopping.
@end table
-@node PowerPC, PA, MIPS Embedded, Embedded Processors
+@node PowerPC
@subsection PowerPC
@table @code
@end table
-@node PA, SH, PowerPC, Embedded Processors
+@node PA
@subsection HP PA Embedded
@table @code
@end table
-@node SH, Sparclet, PA, Embedded Processors
+@node SH
@subsection Hitachi SH
@table @code
@end table
-@node Sparclet, Sparclite, SH, Embedded Processors
+@node Sparclet
@subsection Tsqware Sparclet
@cindex Sparclet
* 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.
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.
Connected to ttya.
@end example
-@node Sparclet Download, Sparclet Execution, Sparclet Connection, Sparclet
+@node Sparclet Download
@subsubsection Sparclet download
@cindex download to Sparclet
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
(gdbslet)
@end example
-@node Sparclite, ST2000, Sparclet, Embedded Processors
+@node Sparclite
@subsection Fujitsu Sparclite
@table @code
@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
@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
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
* MIPS::
@end menu
-@node A29K, Alpha, Architectures, Architectures
+@node A29K
@subsection A29K
@table @code
@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
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
* Debugging Output:: Optional messages about internal happenings
@end menu
-@node Prompt, Editing, Controlling GDB, Controlling GDB
+@node Prompt
@section Prompt
@cindex prompt
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
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
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
from wrapping its output.
@end table
-@node Numbers, Messages/Warnings, Screen Size, Controlling GDB
+@node Numbers
@section Numbers
@cindex number representation
@cindex entering numbers
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
@end table
-@node Debugging Output, ,Messages/Warnings, Controlling GDB
+@node Debugging Output
@section Optional messages about internal happenings
@table @code
@kindex set debug arch
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
* Output:: Commands for controlled output
@end menu
-@node Define, Hooks, Sequences, Sequences
+@node Define
@section User-defined commands
@cindex user-defined command
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
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
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
letter.
@end table
-@node Emacs, Annotations, Sequences, Top
+@node Emacs
@chapter Using @value{GDBN} under @sc{gnu} Emacs
@cindex Emacs
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}
* 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
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
@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
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
* 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,
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}
@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
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