aboutsummaryrefslogtreecommitdiff
path: root/gdb/doc
diff options
context:
space:
mode:
authorRoland Pesch <pesch@cygnus>1993-03-27 01:32:11 +0000
committerRoland Pesch <pesch@cygnus>1993-03-27 01:32:11 +0000
commit1d7c3357ddfe48ec7b755f8599d48384bdeb6a8e (patch)
tree4bf5554debd0ab90f39dccdbef7e6205701b29b1 /gdb/doc
parent0f0834c5184648a16b61cf097a2742ccc97de9c3 (diff)
downloadgdb-1d7c3357ddfe48ec7b755f8599d48384bdeb6a8e.zip
gdb-1d7c3357ddfe48ec7b755f8599d48384bdeb6a8e.tar.gz
gdb-1d7c3357ddfe48ec7b755f8599d48384bdeb6a8e.tar.bz2
1. Update conditional markup:
(a) to make H8 configuration come out right (first attempt since conversion to texinfo conditionals); (b) to exploit yesterday's makeinfo bugfix, using conditionals in menus rather than multiple alternative menus. 2. Update H8 text to refer to H8/500 as well as H8/300. 3. Define config file gdb-config.texi as a link in Makefile, based on a DOC_CONFIG variable.
Diffstat (limited to 'gdb/doc')
-rw-r--r--gdb/doc/Makefile.in13
-rw-r--r--gdb/doc/all-config.texi42
-rw-r--r--gdb/doc/gdb-config.texi104
-rw-r--r--gdb/doc/gdb.texinfo1016
-rw-r--r--gdb/doc/gdbinv-s.texi87
-rw-r--r--gdb/doc/h8-config.texi50
6 files changed, 307 insertions, 1005 deletions
diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index 74143b4..46d528e 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -47,6 +47,8 @@ READLINE_DIR = ${gdbdir}/../readline/doc
SET_TEXINPUTS = TEXINPUTS=${TEXIDIR}:.:$(srcdir):$(READLINE_DIR):$$TEXINPUTS
+DOC_CONFIG = all
+
# Don Knuth's TeX formatter
TEX = tex
@@ -154,6 +156,15 @@ lrefcard.ps : $(srcdir)/refcard.tex $(srcdir)/lpsrc.sed
GDBvn.texi : ${gdbdir}/Makefile.in
echo "@set GDBVN `sed <$(srcdir)/../Makefile.in -n 's/VERSION = //p'`" > ./GDBvn.texi
+# Choose configuration for GDB manual (normally `all'; normally not tied into
+# `configure' script because most users prefer generic version of manual,
+# not one for their binary config---which may not be specifically
+# defined anyways).
+gdb-config.texi: ${DOC_CONFIG}-config.texi
+ ln -s ${srcdir}/${DOC_CONFIG}-config.texi gdb-config.texi || \
+ ln ${srcdir}/${DOC_CONFIG}-config.texi gdb-config.texi || \
+ cp ${srcdir}/${DOC_CONFIG}-config.texi gdb-config.texi
+
# GDB MANUAL: texinfo source, using @set/@clear/@value/@ifset/@ifclear
# If your texinfo or makeinfo don't support these, get a new texinfo release
#
@@ -196,7 +207,7 @@ gdb.info: ${SFILES_DOC}
# it out for gdb manual's include files---but only if not configured
# in main sourcedir.
links2roff: $(SFILES_INCLUDED)
- if [ ! -f gdb-config.texi ]; then \
+ if [ ! -f gdb.texinfo ]; then \
ln -s $(SFILES_INCLUDED) . || \
ln $(SFILES_INCLUDED) . || \
cp $(SFILES_INCLUDED) . ; \
diff --git a/gdb/doc/all-config.texi b/gdb/doc/all-config.texi
new file mode 100644
index 0000000..83c9ba1
--- /dev/null
+++ b/gdb/doc/all-config.texi
@@ -0,0 +1,42 @@
+@c GDB version number is recorded in the variable GDBVN
+@include GDBvn.texi
+@c
+@set AGGLOMERATION
+@clear AMDxxixK
+@set BARETARGET
+@set CONLY
+@set DOSHOST
+@clear FSFDOC
+@set Hviii
+@set HviiiEXCLUSIVE
+@clear Icmlx
+@clear NOVEL
+@clear POSIX
+@set PRECONFIGURED
+@clear REMOTESTUB
+@set SIMS
+@clear SERIAL
+@clear SPARC
+@clear STmm
+@clear VXWORKS
+@clear ZviiiK
+@c ----------------------------------------------------------------------
+@c STRINGS:
+@c
+@c Name of GDB program. Used also for (gdb) prompt string.
+@set GDBP gdb
+@c
+@c Name of GDB product. Used in running text.
+@set GDBN GDB
+@c
+@c Name of GDB initialization file.
+@set GDBINIT .gdbinit
+@c
+@c Name of target.
+@set TARGET Hitachi H/300 and H/500
+@c
+@c Name of GCC product
+@set NGCC GCC
+@c
+@c Name of GCC program
+@set GCC gcc
diff --git a/gdb/doc/gdb-config.texi b/gdb/doc/gdb-config.texi
index fab8a62..e69de29 100644
--- a/gdb/doc/gdb-config.texi
+++ b/gdb/doc/gdb-config.texi
@@ -1,104 +0,0 @@
-@c GDB MANUAL configuration file.
-@c Copyright (c) 1993 Free Software Foundation, Inc.
-@c
-@c NOTE: While the GDB manual is configurable (by changing these
-@c switches), its configuration is ***NOT*** automatically tied in to
-@c source configuration---because the authors expect that, save in
-@c unusual cases, the most inclusive form of the manual is appropriate
-@c no matter how the program itself is configured.
-@c
-@c The only automatically-varying variable is the GDB version number,
-@c which the Makefile rewrites based on the VERSION variable from
-@c `../Makefile.in'.
-@c
-@c GDB version number is recorded in the variable GDBVN
-@include GDBvn.texi
-@c
-@c ----------------------------------------------------------------------
-@c PLATFORM FLAGS:
-@set GENERIC
-@c
-@c Hitachi H8/300 target:
-@set Hviii
-@c Hitachi H8/300 target ONLY:
-@clear HviiiEXCLUSIVE
-@c
-@c SPARC target:
-@set SPARC
-@c
-@c AMD 29000 target:
-@set AMDxxixK
-@c
-@c Intel 960 target:
-@set Icmlx
-@c
-@c Tandem ST2000 (phone switch) target:
-@set STmm
-@c
-@c Zilog 8000 target:
-@set ZviiiK
-@c
-@c Lucid "Energize" environment:
-@clear LUCID
-@c
-@c Wind River Systems VxWorks environment:
-@set VXWORKS
-@c
-@c ----------------------------------------------------------------------
-@c DOC FEATURE FLAGS:
-@c
-@c Include change-from-old?
-@set NOVEL
-@c
-@c Bare-board target?
-@clear BARETARGET
-@c
-@c Restrict languages discussed to C?
-@clear CONLY
-@c
-@c Specifically for host machine running DOS?
-@clear DOSHOST
-@c
-@c Talk about CPU simulator targets?
-@set SIMS
-@c
-@c Is manual stand-alone, or part of an agglomeration, with overall GPL?
-@clear AGGLOMERATION
-@c
-@c Remote serial line settings of interest?
-@set SERIAL
-@c
-@c Discuss features requiring Posix or similar OS environment?
-@set POSIX
-@c
-@c Discuss remote serial debugging stub?
-@set REMOTESTUB
-@c
-@c Refrain from discussing how to configure sw and format doc?
-@clear PRECONFIGURED
-@c
-@c Refrain from referring to unfree publications?
-@set FSFDOC
-@c
-@c ----------------------------------------------------------------------
-@c STRINGS:
-@c
-@c Name of GDB program. Used also for (gdb) prompt string.
-@set GDBP gdb
-@c
-@c Name of GDB product. Used in running text.
-@set GDBN GDB
-@c
-@c Name of GDB initialization file.
-@set GDBINIT .gdbinit
-@c
-@c Name of host. Should not be used in generic configs, but generic
-@c value may catch some flubs.
-@set HOST machine specific
-@c
-@c Name of GCC product
-@set NGCC GCC
-@c
-@c Name of GCC program
-@set GCC gcc
-
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 31fc079..ae576b3 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -3,7 +3,7 @@
@c
@c %**start of header
@c makeinfo ignores cmds prev to setfilename, so its arg cannot make use
-@c of @set vars. However, we can override filename with makeinfo -o.
+@c of @set vars. However, you can override filename with makeinfo -o.
@setfilename gdb.info
@c
@include gdb-config.texi
@@ -12,13 +12,13 @@
@settitle Debugging with @value{GDBN}
@end ifset
@ifclear GENERIC
-@settitle Debugging with @value{GDBN} (@value{HOST})
+@settitle Debugging with @value{GDBN} (@value{TARGET})
@end ifclear
@setchapternewpage odd
@c %**end of header
@iftex
-@c @smallbook
+@smallbook
@c @cropmarks
@end iftex
@@ -108,7 +108,7 @@ instead of in the original English.
@title Debugging with @value{GDBN}
@subtitle The GNU Source-Level Debugger
@ifclear GENERIC
-@subtitle on @value{HOST} Systems
+@subtitle on @value{TARGET} Systems
@end ifclear
@sp 1
@c !!set edition, date, version
@@ -156,10 +156,6 @@ This file describes @value{GDBN}, the GNU symbolic debugger.
@c !!set edition, date, version
This is Edition 4.07, January 1993, for GDB Version @value{GDBVN}.
-@c Makeinfo node defaulting gets very confused by conditionals in menus,
-@c unfortunately. Otherwise we would use the following ignored menu,
-@c which involves four switches:
-@ignore
@menu
* Summary:: Summary of @value{GDBN}
@ifset NOVEL
@@ -179,574 +175,32 @@ This is Edition 4.07, January 1993, for GDB Version @value{GDBVN}.
* Languages:: Using @value{GDBN} with different languages
@end ifclear
@ifset CONLY
-* C:: C and C++
-@end ifset
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-@ifclear DOSHOST
-* Emacs:: Using @value{GDBN} under GNU Emacs
-@end ifclear
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-@ifset NOVEL
-* Renamed Commands::
-@end ifset
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ignore
-@c
-@c Since that does not work, we must unroll the above into 16 cases:
-@c
-@c Menu for NOVEL && !BARETARGET && !CONLY && !DOSHOST
-@ifset NOVEL
-@ifclear BARETARGET
-@ifclear CONLY
-@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifclear
-@end ifclear
+* C:: C language support
@end ifset
+@c remnant makeinfo bug, blank line needed after two end-ifs?
-@c Menu for NOVEL && !BARETARGET && !CONLY && DOSHOST
-@ifset NOVEL
-@ifclear BARETARGET
-@ifclear CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
* Controlling GDB:: Controlling @value{GDBN}
* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifclear
-@end ifclear
-@end ifset
-
-@c Menu for NOVEL && !BARETARGET && CONLY && !DOSHOST
-@ifset NOVEL
-@ifclear BARETARGET
-@ifset CONLY
@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* C:: C Language Support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
@end ifclear
-@end ifset
-@end ifclear
-@end ifset
-
-@c Menu for NOVEL && !BARETARGET && CONLY && DOSHOST
-@ifset NOVEL
-@ifclear BARETARGET
-@ifset CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* C:: C Language Support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifset
-@end ifclear
-@end ifset
-
-@c Menu for NOVEL && BARETARGET && !CONLY && !DOSHOST
@ifset NOVEL
-@ifset BARETARGET
-@ifclear CONLY
-@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifclear
-@end ifset
-@end ifset
-
-@c Menu for NOVEL && BARETARGET && !CONLY && DOSHOST
-@ifset NOVEL
-@ifset BARETARGET
-@ifclear CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifclear
-@end ifset
-@end ifset
-
-@c Menu for NOVEL && BARETARGET && CONLY && !DOSHOST
-@ifset NOVEL
-@ifset BARETARGET
-@ifset CONLY
-@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* C:: C Language support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifset
-@end ifset
-@end ifset
-
-@c Menu for NOVEL && BARETARGET && CONLY && DOSHOST
-@ifset NOVEL
-@ifset BARETARGET
-@ifset CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* New Features:: New features since GDB version 3.5
-* 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
-* C:: C Language support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Renamed Commands::
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifset
-@end ifset
-@end ifset
-
-@c Menu for !NOVEL && !BARETARGET && !CONLY && !DOSHOST
-@ifclear NOVEL
-@ifclear BARETARGET
-@ifclear CONLY
-@ifclear DOSHOST
-@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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifclear
-@end ifclear
-@end ifclear
-
-@c Menu for !NOVEL && !BARETARGET && !CONLY && DOSHOST
-@ifclear NOVEL
-@ifclear BARETARGET
-@ifclear CONLY
-@ifset DOSHOST
-@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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifclear
-@end ifclear
-@end ifclear
-
-@c Menu for !NOVEL && !BARETARGET && CONLY && !DOSHOST
-@ifclear NOVEL
-@ifclear BARETARGET
-@ifset CONLY
-@ifclear DOSHOST
-@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
-* C:: C Language support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifset
-@end ifclear
-@end ifclear
-
-@c Menu for !NOVEL && !BARETARGET && CONLY && DOSHOST
-@ifclear NOVEL
-@ifclear BARETARGET
-@ifset CONLY
-@ifset DOSHOST
-@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
-* C:: C Language support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifset
-@end ifclear
-@end ifclear
-
-@c Menu for !NOVEL && BARETARGET && !CONLY && !DOSHOST
-@ifclear NOVEL
-@ifset BARETARGET
-@ifclear CONLY
-@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* 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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifclear
@end ifset
-@end ifclear
-
-@c Menu for !NOVEL && BARETARGET && !CONLY && DOSHOST
-@ifclear NOVEL
-@ifset BARETARGET
-@ifclear CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* 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
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
+@ifclear PRECONFIGURED
* Formatting Documentation:: How to format and print GDB documentation
* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifset
-@end ifclear
-@end ifset
@end ifclear
-
-@c Menu for !NOVEL && BARETARGET && CONLY && !DOSHOST
-@ifclear NOVEL
-@ifset BARETARGET
-@ifset CONLY
-@ifclear DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* 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
-* C:: C Language Support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* Emacs:: Using @value{GDBN} under GNU Emacs
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
+@ifclear AGGLOMERATION
* Copying:: GNU GENERAL PUBLIC LICENSE
-* Index:: Index
-@end menu
-@end ifclear
-@end ifset
-@end ifset
@end ifclear
-
-@c Menu for !NOVEL && BARETARGET && CONLY && DOSHOST
-@ifclear NOVEL
-@ifset BARETARGET
-@ifset CONLY
-@ifset DOSHOST
-@menu
-* Summary:: Summary of @value{GDBN}
-* 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
-* C:: C Language Support
-* Symbols:: Examining the symbol table
-* Altering:: Altering execution
-* GDB Files:: @value{GDBN} files
-* Targets:: Specifying a debugging target
-* Controlling GDB:: Controlling @value{GDBN}
-* Sequences:: Canned sequences of commands
-* GDB Bugs:: Reporting bugs in @value{GDBN}
-* Formatting Documentation:: How to format and print GDB documentation
-* Installing GDB:: Installing GDB
-* Copying:: GNU GENERAL PUBLIC LICENSE
* Index:: Index
@end menu
-@end ifset
-@end ifset
-@end ifset
-@end ifclear
-
@end ifinfo
@node Summary
@@ -833,10 +287,12 @@ stability, and capabilities of the entire debugger.
Richard Stallman, assisted at various times by Pete TerMaat, Chris
Hanson, and Richard Mlynarik, handled releases through 2.8.
+@ifclear CONLY
Michael Tiemann is the author of most of the GNU C++ support in GDB,
with significant additional contributions from Per Bothner. James
Clark wrote the GNU C++ demangler. Early work on C++ was by Peter
TerMaat (who also did much general update work leading to release 3.0).
+@end ifclear
GDB 4 uses the BFD subroutine library to examine multiple
object-file formats; BFD was a joint project of David V.
@@ -876,8 +332,13 @@ Andrew Beers of SUNY Buffalo wrote the language-switching code and
the Modula-2 support, and contributed the Languages chapter of this
manual.
-Fred Fish wrote most of the support for Unix System Vr4, and enhanced
-the command-completion support to cover C++ overloaded symbols.
+Fred Fish wrote most of the support for Unix System Vr4.
+@ifclear CONLY
+He also enhanced the command-completion support to cover C++ overloaded
+symbols.
+@end ifclear
+
+Hitachi America, Ltd. sponsored the support for the H8/300 and H8/500.
@ifset NOVEL
@node New Features
@@ -1243,8 +704,6 @@ This chapter discusses how to start @value{GDBN}, and how to get out of it.
(The essentials: type @samp{@value{GDBP}} to start GDB, and type @kbd{quit}
or @kbd{C-d} to exit.)
-@ignore
-@c original form of menu, pre-unfolding:
@menu
* Invoking GDB:: How to start @value{GDBN}
* Quitting GDB:: How to quit @value{GDBN}
@@ -1252,30 +711,14 @@ or @kbd{C-d} to exit.)
* Shell Commands:: How to use shell commands inside @value{GDBN}
@end ifclear
@end menu
-@end ignore
-
-@ifclear BARETARGET
-@menu
-* Invoking GDB:: How to start @value{GDBN}
-* Quitting GDB:: How to quit @value{GDBN}
-* Shell Commands:: How to use shell commands inside @value{GDBN}
-@end menu
-@end ifclear
-
-@ifset BARETARGET
-@menu
-* Invoking GDB:: How to start @value{GDBN}
-* Quitting GDB:: How to quit @value{GDBN}
-@end menu
-@end ifset
@node Invoking GDB
@section Invoking @value{GDBN}
@ifset HviiiEXCLUSIVE
For details on starting up @value{GDBP} as a
-remote debugger attached to a Hitachi H8/300 board, see @ref{Hitachi
-H8/300 Remote,,@value{GDBN} and the Hitachi H8/300}.
+remote debugger attached to a Hitachi H8/300 or H8/500 board, see @ref{Hitachi
+H8 Remote,,@value{GDBN} and the Hitachi H8/300 and H8/500}.
@end ifset
Invoke @value{GDBN} by running the program @code{@value{GDBP}}. Once started,
@@ -1343,8 +786,6 @@ in sequential order. The order makes a difference when the
@samp{-x} option is used.
-@ignore
-@c original, intended form of this menu (pre-unfolding):
@menu
@ifclear GENERIC
@ifset REMOTESTUB
@@ -1364,53 +805,17 @@ in sequential order. The order makes a difference when the
* ST2000 Remote:: @value{GDBN} with a Tandem ST2000
@end ifset
@ifset Hviii
-* Hitachi H8/300 Remote:: @value{GDBN} and the Hitachi H8/300
+* Hitachi H8 Remote:: @value{GDBN} and the Hitachi H8/300 and H8/500
@end ifset
@ifset SIMS
* Simulator:: Simulated CPU target
@end ifset
@end ifclear
-* File Options:: Choosing files
-* Mode Options:: Choosing modes
-@end menu
-@end ignore
-
-@c Unfolded form:
-@c Sigh--- GENERIC plus 7 switches mean 1+2^7 forms of this menu!
-@c Add them only on demand; no point in including forms for which
-@c there's no defined config file. Maybe by the time all are needed,
-@c makeinfo will be capable of dealing with menus like the above.
-
-@ifset GENERIC
-@menu
-* File Options:: Choosing files
-* Mode Options:: Choosing modes
-@end menu
-@end ifset
+@c remnant makeinfo bug requires this blank line after *two* end-ifblahs:
-@c Hviii config: !GENERIC && Hviii && nothing else
-@ifclear GENERIC
-@ifclear REMOTESTUB
-@ifclear Icmlx
-@ifclear AMDxxixK
-@ifclear VXWORKS
-@ifclear STmm
-@ifset Hviii
-@ifclear ZviiiK
-@menu
-* Hitachi H8/300 Remote:: @value{GDBN} and the Hitachi H8/300
-* Simulator:: Simulated CPU target
* File Options:: Choosing files
* Mode Options:: Choosing modes
@end menu
-@end ifclear
-@end ifset
-@end ifclear
-@end ifclear
-@end ifclear
-@end ifclear
-@end ifclear
-@end ifclear
@ifclear GENERIC
@include gdbinv-s.texi
@@ -1449,8 +854,13 @@ Read symbol table from file @var{file}.
@item -exec=@var{file}
@itemx -e @var{file}
Use file @var{file} as the executable file to execute when
+@ifset BARETARGET
+appropriate.
+@end ifset
+@ifclear BARETARGET
appropriate, and for examining pure data in conjunction with a core
dump.
+@end ifclear
@item -se=@var{file}
Read symbol table from file @var{file} and use it as the executable
@@ -1485,9 +895,10 @@ Future @value{GDBN} debugging sessions will notice the presence of this file,
and will quickly map in symbol information from it, rather than reading
the symbol table from the executable program.
-The @file{.syms} file is specific to the host machine on which @value{GDBN} is run.
-It holds an exact image of the internal @value{GDBN} symbol table. It cannot be
-shared across multiple host platforms.
+@c FIXME! Really host, not target?
+The @file{.syms} file is specific to the host machine where @value{GDBN}
+is run. It holds an exact image of the internal @value{GDBN} symbol
+table. It cannot be shared across multiple host platforms.
@end ifclear
@item -r
@@ -1560,6 +971,7 @@ as a client in the Energize environment. Avoid this option when you run
@value{GDBN} with Energize} for more discussion of using @value{GDBN} with Energize.
@end ifset
+@ifclear DOSHOST
@item -fullname
@itemx -f
Emacs sets this option when it runs @value{GDBN} as a subprocess. It tells @value{GDBN}
@@ -1570,6 +982,7 @@ like two @samp{\032} characters, followed by the file name, line number
and character position separated by colons, and a newline. The
Emacs-to-@value{GDBN} interface program uses the two @samp{\032} characters as
a signal to display the source code for the frame.
+@end ifclear
@ifset SERIAL
@item -b @var{bps}
@@ -1778,6 +1191,7 @@ parentheses or other characters that @value{GDBN} normally excludes from its
notion of a word. To permit word completion to work in this situation,
you may enclose words in @code{'} (single quote marks) in @value{GDBN} commands.
+@ifclear CONLY
The most likely situation where you might need this is in typing the
name of a C++ function. This is because C++ allows function overloading
(multiple definitions of the same function, distinguished by argument
@@ -1811,6 +1225,7 @@ place:
In general, @value{GDBN} can tell that a quote is needed (and inserts it) if
you have not yet started typing the argument list when you ask for
completion on an overloaded symbol.
+@end ifclear
@node Help
@@ -1943,32 +1358,17 @@ Display the GNU ``NO WARRANTY'' statement.
@chapter Running Programs Under @value{GDBN}
When you run a program under @value{GDBN}, you must first generate
-debugging information when you compile it. You may start it with its
-arguments, if any, in an environment of your choice. You may redirect
-your program's input and output, debug an already running process, or
-kill a child process.
-
-@ignore
-@c pre-unfolding:
-@menu
-* Compilation:: Compiling for debugging
-* Starting:: Starting your program
+debugging information when you compile it.
@ifclear BARETARGET
-* Arguments:: Your program's arguments
-* Environment:: Your program's environment
-* Working Directory:: Your program's working directory
-* Input/Output:: Your program's input and output
-* Attach:: Debugging an already-running process
-* Kill Process:: Killing the child process
-* Process Information:: Additional process information
+You may start it with its arguments, if any, in an environment of your
+choice. You may redirect your program's input and output, debug an
+already running process, or kill a child process.
@end ifclear
-@end menu
-@end ignore
-@ifclear BARETARGET
@menu
* Compilation:: Compiling for debugging
* Starting:: Starting your program
+@ifclear BARETARGET
* Arguments:: Your program's arguments
* Environment:: Your program's environment
* Working Directory:: Your program's working directory
@@ -1976,15 +1376,8 @@ kill a child process.
* Attach:: Debugging an already-running process
* Kill Process:: Killing the child process
* Process Information:: Additional process information
-@end menu
@end ifclear
-
-@ifset BARETARGET
-@menu
-* Compilation:: Compiling for debugging
-* Starting:: Starting your program
@end menu
-@end ifset
@node Compilation
@section Compiling for debugging
@@ -2306,12 +1699,11 @@ for @value{GDBN} still comes from your terminal.
@table @code
@item attach @var{process-id}
-This command
-attaches to a running process---one that was started outside @value{GDBN}.
-(@code{info files} will show your active targets.) The command takes as
-argument a process ID. The usual way to find out the process-id of
-a Unix process is with the @code{ps} utility, or with the @samp{jobs -l}
-shell command.
+This command attaches to a running process---one that was started
+outside @value{GDBN}. (@code{info files} will show your active
+targets.) The command takes as argument a process ID. The usual way to
+find out the process-id of a Unix process is with the @code{ps} utility,
+or with the @samp{jobs -l} shell command.
@code{attach} will not repeat if you press @key{RET} a second time after
executing the command.
@@ -2429,7 +1821,11 @@ program before it terminates; or so that, if your program runs into
trouble, you can investigate and find out why.
Inside @value{GDBN}, your program may stop for any of several reasons, such
-as a signal, a breakpoint, or reaching a new line after a @value{GDBN}
+as
+@ifclear BARETARGET
+a signal,
+@end ifclear
+a breakpoint, or reaching a new line after a @value{GDBN}
command such as @code{step}. You may then examine and change
variables, set new breakpoints or remove old ones, and then continue
execution. Usually, the messages shown by @value{GDBN} provide ample
@@ -2440,11 +1836,13 @@ request this information at any time.
@item info program
@kindex info program
Display information about the status of your program: whether it is
-running or not, what process it is, and why it stopped.
+running or not,
+@ifclear BARETARGET
+what process it is,
+@end ifclear
+and why it stopped.
@end table
-@ignore
-@c original menu
@menu
@ifclear CONLY
* Breakpoints:: Breakpoints, watchpoints, and exceptions
@@ -2452,56 +1850,15 @@ running or not, what process it is, and why it stopped.
@ifset CONLY
* Breakpoints:: Breakpoints and watchpoints
@end ifset
-* Continuing and Stepping:: Resuming execution
-@ifset POSIX
-* Signals:: Signals
-@end ifset
-@end menu
-@end ignore
+@c Remnant makeinfo bug requires blank line after *successful* end-if in menu:
-@c !CONLY && POSIX
-@ifclear CONLY
-@ifset POSIX
-@menu
-* Breakpoints:: Breakpoints, watchpoints, and exceptions
* Continuing and Stepping:: Resuming execution
-* Signals:: Signals
-@end menu
-@end ifset
-@end ifclear
-
-@c CONLY && POSIX
-@ifset CONLY
@ifset POSIX
-@menu
-* Breakpoints:: Breakpoints and watchpoints
-* Continuing and Stepping:: Resuming execution
* Signals:: Signals
-@end menu
@end ifset
-@end ifset
-
-@c !CONLY && !POSIX
-@ifclear CONLY
-@ifclear POSIX
-@menu
-* Breakpoints:: Breakpoints, watchpoints, and exceptions
-* Continuing and Stepping:: Resuming execution
-@end menu
-@end ifclear
-@end ifclear
-
-@c CONLY && !POSIX
-@ifset CONLY
-@ifclear POSIX
-@menu
-* Breakpoints:: Breakpoints and watchpoints
-* Continuing and Stepping:: Resuming execution
@end menu
-@end ifclear
-@end ifset
-@c node-defaulting requires adjacency of @node and sectioning cmds
+@c makeinfo node-defaulting requires adjacency of @node and sectioning cmds
@c ...hence distribute @node Breakpoints over two possible @if expansions.
@c
@ifclear CONLY
@@ -2554,13 +1911,19 @@ no effect on your program until you enable it again.
@menu
* Set Breaks:: Setting breakpoints
* Set Watchpoints:: Setting watchpoints
+@ifclear CONLY
* Exception Handling:: Breakpoints and exceptions
+@end ifclear
* Delete Breaks:: Deleting breakpoints
* Disabling:: Disabling breakpoints
* Conditions:: Break conditions
* Break Commands:: Breakpoint command lists
+@ifclear CONLY
* Breakpoint Menus:: Breakpoint menus
+@end ifclear
+@ifclear BARETARGET
* Error in Breakpoints:: ``Cannot insert breakpoints''
+@end ifclear
@end menu
@node Set Breaks
@@ -2776,6 +2139,7 @@ This command prints a list of watchpoints and breakpoints; it is the
same as @code{info break}.
@end table
+@ifclear CONLY
@node Exception Handling
@subsection Breakpoints and exceptions
@cindex exception handlers
@@ -2835,18 +2199,14 @@ which has the following ANSI C interface:
@noindent
To make the debugger catch all exceptions before any stack
unwinding takes place, set a breakpoint on @code{__raise_exception}
-@ifclear CONLY
(@pxref{Breakpoints, ,Breakpoints; watchpoints; and exceptions}).
-@end ifclear
-@ifset CONLY
-(@pxref{Breakpoints, ,Breakpoints and watchpoints}).
-@end ifset
With a conditional breakpoint (@pxref{Conditions, ,Break conditions})
that depends on the value of @var{id}, you can stop your program when
a specific exception is raised. You can use multiple conditional
breakpoints to stop your program when any of a number of exceptions are
raised.
+@end ifclear
@node Delete Breaks
@subsection Deleting breakpoints
@@ -3185,6 +2545,7 @@ break conditions without changing the terminal modes. When you want
to have nontrivial conditions for performing the side effects, the
operators @samp{&&}, @samp{||} and @samp{?@dots{}:} may be useful.
+@ifclear CONLY
@node Breakpoint Menus
@subsection Breakpoint menus
@cindex overloading
@@ -3227,7 +2588,9 @@ Multiple breakpoints were set.
Use the "delete" command to delete unwanted breakpoints.
(@value{GDBP})
@end example
+@end ifclear
+@ifclear BARETARGET
@node Error in Breakpoints
@subsection ``Cannot insert breakpoints''
@@ -3260,6 +2623,7 @@ Relink your program so that the text segment is nonsharable, using the
linker option @samp{-N}. The operating system limitation may not apply
to nonsharable executables.
@end enumerate
+@end ifclear
@node Continuing and Stepping
@section Continuing and stepping
@@ -3326,8 +2690,11 @@ execution will proceed until control reaches another function.
@item step @var{count}
Continue running as in @code{step}, but do so @var{count} times. If a
-breakpoint is reached or a signal not related to stepping occurs before
-@var{count} steps, stepping stops right away.
+breakpoint is reached,
+@ifclear BARETARGET
+or a signal not related to stepping occurs before @var{count} steps,
+@end ifclear
+stepping stops right away.
@item next @r{[}@var{count}@r{]}
@kindex next
@@ -3797,6 +3164,7 @@ Print the local variables of the selected frame, each on a separate
line. These are all variables (declared either static or automatic)
accessible at the point of execution of the selected frame.
+@ifclear CONLY
@item info catch
@kindex info catch
@cindex catch exceptions
@@ -3806,6 +3174,7 @@ current stack frame at the current point of execution. To see other
exception handlers, visit the associated frame (using the @code{up},
@code{down}, or @code{frame} commands); then type @code{info catch}.
@xref{Exception Handling, ,Breakpoints and exceptions}.
+@end ifclear
@end table
@node Source
@@ -3825,8 +3194,6 @@ Emacs facilities to view source; @pxref{Emacs, ,Using @value{GDBN} under GNU
Emacs}.
@end ifclear
-@ignore
-@c pre-unfolded menu
@menu
* List:: Printing source lines
@ifclear DOSHOST
@@ -3835,24 +3202,6 @@ Emacs}.
* Source Path:: Specifying source directories
* Machine Code:: Source and machine code
@end menu
-@end ignore
-
-@ifclear DOSHOST
-@menu
-* List:: Printing source lines
-* Search:: Searching source files
-* Source Path:: Specifying source directories
-* Machine Code:: Source and machine code
-@end menu
-@end ifclear
-
-@ifset DOSHOST
-@menu
-* List:: Printing source lines
-* Source Path:: Specifying source directories
-* Machine Code:: Source and machine code
-@end menu
-@end ifset
@node List
@section Printing source lines
@@ -4203,29 +3552,13 @@ It examines data in memory at a specified address and prints it in a
specified format. @xref{Memory, ,Examining memory}.
If you are interested in information about types, or about how the fields
-of a struct or class are declared, use the @code{ptype @var{exp}}
-command rather than @code{print}. @xref{Symbols, ,Examining the Symbol Table}.
-
-@ignore
-@c pre-unfold
-@menu
-* Expressions:: Expressions
-* Variables:: Program variables
-* Arrays:: Artificial arrays
-* Output formats:: Output formats
-* Memory:: Examining memory
-* Auto Display:: Automatic display
-* Print Settings:: Print settings
-* Value History:: Value history
-* Convenience Vars:: Convenience variables
-* Registers:: Registers
-@ifclear HviiiEXCLUSIVE
-* Floating Point Hardware:: Floating point hardware
+of a struct
+@ifclear CONLY
+or class
@end ifclear
-@end menu
-@end ignore
+are declared, use the @code{ptype @var{exp}}
+command rather than @code{print}. @xref{Symbols, ,Examining the Symbol Table}.
-@ifclear HviiiEXCLUSIVE
@menu
* Expressions:: Expressions
* Variables:: Program variables
@@ -4237,24 +3570,10 @@ command rather than @code{print}. @xref{Symbols, ,Examining the Symbol Table}.
* Value History:: Value history
* Convenience Vars:: Convenience variables
* Registers:: Registers
+@ifclear HviiiEXCLUSIVE
* Floating Point Hardware:: Floating point hardware
-@end menu
@end ifclear
-
-@ifset HviiiEXCLUSIVE
-@menu
-* Expressions:: Expressions
-* Variables:: Program variables
-* Arrays:: Artificial arrays
-* Output Formats:: Output formats
-* Memory:: Examining memory
-* Auto Display:: Automatic display
-* Print Settings:: Print settings
-* Value History:: Value history
-* Convenience Vars:: Convenience variables
-* Registers:: Registers
@end menu
-@end ifset
@node Expressions
@section Expressions
@@ -4902,6 +4221,7 @@ symbolic address.
@end table
+@ifclear CONLY
@noindent
These settings are of interest when debugging C++ programs:
@@ -4984,6 +4304,7 @@ Do not pretty print C++ virtual function tables.
@kindex show print vtbl
Show whether C++ virtual function tables are pretty printed, or not.
@end table
+@end ifclear
@node Value History
@section Value history
@@ -5260,6 +4581,7 @@ processors.
@section Floating point hardware
@cindex floating point
+@c FIXME! Really host, not target?
Depending on the host machine architecture, @value{GDBN} may be able to give
you more information about the status of the floating point hardware.
@@ -6003,7 +5325,11 @@ that is not itself an array.
The @code{set print union} and @code{show print union} commands apply to
the @code{union} type. When set to @samp{on}, any @code{union} that is
-inside a @code{struct} or @code{class} will also be printed.
+inside a @code{struct}
+@ifclear CONLY
+or @code{class}
+@end ifclear
+will also be printed.
Otherwise, it will appear as @samp{@{...@}}.
The @code{@@} operator aids in the debugging of dynamic arrays, formed
@@ -6702,43 +6028,26 @@ experiment, using the @value{GDBN} features for altering execution of the
program.
For example, you can store new values into variables or memory
-locations, give your program a signal, restart it at a different address,
-or even return prematurely from a function to its caller.
-
-@ignore
-@c pre-unfold
-@menu
-* Assignment:: Assignment to variables
-* Jumping:: Continuing at a different address
+locations,
@ifclear BARETARGET
-* Signaling:: Giving your program a signal
+give your program a signal, restart it
@end ifclear
-* Returning:: Returning from a function
-* Calling:: Calling your program's functions
-* Patching:: Patching your program
-@end menu
-@end ignore
+@ifset BARETARGET
+restart your program
+@end ifset
+at a different address, or even return prematurely from a function to
+its caller.
-@ifclear BARETARGET
@menu
* Assignment:: Assignment to variables
* Jumping:: Continuing at a different address
+@ifclear BARETARGET
* Signaling:: Giving your program a signal
-* Returning:: Returning from a function
-* Calling:: Calling your program's functions
-* Patching:: Patching your program
-@end menu
@end ifclear
-
-@ifset BARETARGET
-@menu
-* Assignment:: Assignment to variables
-* Jumping:: Continuing at a different address
* Returning:: Returning from a function
* Calling:: Calling your program's functions
* Patching:: Patching your program
@end menu
-@end ifset
@node Assignment
@section Assignment to variables
@@ -6934,10 +6243,16 @@ the value history, if it is not void.
@section Patching programs
@cindex patching binaries
@cindex writing into executables
+@ifclear BARETARGET
@cindex writing into corefiles
+@end ifclear
By default, @value{GDBN} opens the file containing your program's executable
-code (or the corefile) read-only. This prevents accidental alterations
+code
+@ifclear BARETARGET
+(or the corefile)
+@end ifclear
+read-only. This prevents accidental alterations
to machine code; but it also prevents you from intentionally patching
your program's binary.
@@ -6957,9 +6272,13 @@ and core
files for both reading and writing; if you specify @samp{set write
off} (the default), @value{GDBN} will open them read-only.
-If you have already loaded a file, you must load it
-again (using the @code{exec-file} or @code{core-file} command) after
-changing @code{set write}, for your new setting to take effect.
+If you have already loaded a file, you must load it again (using the
+@code{exec-file}
+@ifclear BARETARGET
+or @code{core-file}
+@end ifclear
+command) after changing @code{set write}, for your new setting to take
+effect.
@item show write
@kindex show write
@@ -7170,13 +6489,13 @@ download @var{filename} to the 960 as well as adding its symbols in
@end ifset
@ifset Hviii
-@cindex download to H8/300
-@cindex H8/300 download
-When you select remote debugging to a Hitachi H8/300 board (@pxref{Hitachi
-H8/300 Remote,,@value{GDBN} and the Hitachi H8/300}), the
-@code{load} command downloads your program to the H8/300 and also opens
-it as the current executable target for @value{GDBN} on your host (like the
-@code{file} command).
+@cindex download to H8/300 or H8/500
+@cindex H8/300 or H8/500 download
+When you select remote debugging to a Hitachi H8/300 or H8/500 board
+(@pxref{Hitachi H8 Remote,,@value{GDBN} and the Hitachi H8/300 and H8/500}),
+the @code{load} command downloads your program to the Hitachi board and also
+opens it as the current executable target for @value{GDBN} on your host
+(like the @code{file} command).
@end ifset
@code{load} will not repeat if you press @key{RET} again after using it.
@@ -7210,11 +6529,17 @@ table information for @var{filename}.
@kindex info files
@kindex info target
@code{info files} and @code{info target} are synonymous; both print
-the current targets (@pxref{Targets, ,Specifying a Debugging Target}),
-including the names of the executable and core dump files currently in
-use by @value{GDBN}, and the files from which symbols were loaded. The command
-@code{help targets} lists all possible targets rather than current
-ones.
+the current target (@pxref{Targets, ,Specifying a Debugging Target}),
+including the
+@ifclear BARETARGET
+names of the executable and core dump files
+@end ifclear
+@ifset BARETARGET
+name of the executable file
+@end ifset
+currently in use by @value{GDBN}, and the files from which symbols were
+loaded. The command @code{help targets} lists all possible targets
+rather than current ones.
@end table
All file-specifying commands allow both absolute and relative file names
@@ -7327,13 +6652,21 @@ debugging it, you can debug @code{@value{GDBP}} with itself, breakpoint on
examine @code{*bufp} to see the symbol.
@item stub type has NULL name
-@value{GDBN} could not find the full definition for a struct or class.
+@value{GDBN} could not find the full definition for
+@ifclear CONLY
+a struct or class.
+@end ifclear
+@ifset CONLY
+a struct.
+@end ifset
+@ifclear CONLY
@item const/volatile indicator missing (ok if using g++ v1.x), got@dots{}
The symbol information for a C++ member function is missing some
information that recent versions of the compiler should have output
for it.
+@end ifclear
@item info mismatch between compiler and debugger
@@ -7418,14 +6751,19 @@ already-running process}).
@table @code
@item target @var{type} @var{parameters}
-Connects the @value{GDBN} host environment to a target machine or process. A
-target is typically a protocol for talking to debugging facilities. You
-use the argument @var{type} to specify the type or protocol of the
-target machine.
+Connects the @value{GDBN} host environment to a target
+@ifset BARETARGET
+machine.
+@end ifset
+@ifclear BARETARGET
+machine or process. A target is typically a protocol for talking to
+debugging facilities. You use the argument @var{type} to specify the
+type or protocol of the target machine.
Further @var{parameters} are interpreted by the target protocol, but
typically include things like device names or host names to connect
with, process numbers, and baud rates.
+@end ifclear
The @code{target} command will not repeat if you press @key{RET} again
after executing the command.
@@ -7450,10 +6788,12 @@ configuration):
An executable file. @samp{target exec @var{program}} is the same as
@samp{exec-file @var{program}}.
+@ifclear BARETARGET
@item target core @var{filename}
@kindex target core
A core dump file. @samp{target core @var{filename}} is the same as
@samp{core-file @var{filename}}.
+@end ifclear
@ifset REMOTESTUB
@item target remote @var{dev}
@@ -7489,10 +6829,10 @@ name of the program to be debugged, as it appears to DOS on the PC.
@ifset Hviii
@item target hms
@kindex target hms
-A Hitachi H8/300 board, attached via serial line to your host. Use
+A Hitachi H8/300 or H8/500 board, attached via serial line to your host. Use
special commands @code{device} and @code{speed} to control the serial
-line and the communications speed used. @xref{Hitachi H8/300
-Remote,,@value{GDBN} and the Hitachi H8/300}.
+line and the communications speed used. @xref{Hitachi H8
+Remote,,@value{GDBN} and the Hitachi H8/300 and H8/500}.
@end ifset
@ifset Icmlx
@@ -7551,8 +6891,6 @@ configuration of GDB; use @code{help targets} to list them.
@c Text on starting up GDB in various specific cases; it goes up front
@c in manuals configured for any of those particular situations, here
@c otherwise.
-@ignore
-@c original, intended form of this menu (pre-unfolding):
@menu
@ifset REMOTESTUB
* Remote Serial:: @value{GDBN} remote serial protocol
@@ -7571,28 +6909,12 @@ configuration of GDB; use @code{help targets} to list them.
* ST2000 Remote:: @value{GDBN} with a Tandem ST2000
@end ifset
@ifset Hviii
-* Hitachi H8/300 Remote:: @value{GDBN} and the Hitachi H8/300
+* Hitachi H8 Remote:: @value{GDBN} and the Hitachi H8/300 and H8/500
@end ifset
@ifset SIMS
* Simulator:: Simulated CPU target
@end ifset
@end menu
-@end ignore
-
-@c Unfolded menus:
-@c add as configs require, while unfolding remains necessary.
-@c
-@c All target details:
-@menu
-* Remote Serial:: @value{GDBN} remote serial protocol
-* i960-Nindy Remote:: @value{GDBN} with a remote i960 (Nindy)
-* UDI29K Remote:: @value{GDBN} and the UDI protocol for AMD29K
-* EB29K Remote:: @value{GDBN} with a remote EB29K
-* VxWorks Remote:: @value{GDBN} and VxWorks
-* ST2000 Remote:: @value{GDBN} with a Tandem ST2000
-* Hitachi H8/300 Remote:: @value{GDBN} and the Hitachi H8/300
-* Simulator:: Simulated CPUs
-@end menu
@include gdbinv-s.texi
@end ifset
@@ -8009,14 +7331,15 @@ command. Whenever you run the command @samp{foo}, if the user-defined
command @samp{hook-foo} exists, it is executed (with no arguments)
before that command.
-In addition, a pseudo-command, @samp{stop} exists. Hooking this command
-will cause your hook to be executed every time execution stops in the
-inferior program, before breakpoint commands are run, displays are
-printed, or the stack frame is printed.
+In addition, a pseudo-command, @samp{stop} exists. Defining
+(@samp{hook-stop}) makes the associated commands execute every time
+execution stops in your program: before breakpoint commands are run,
+displays are printed, or the stack frame is printed.
-For example, to cause @code{SIGALRM} signals to be ignored while
-single-stepping, but cause them to be resumed during normal execution,
-you could do:
+@ifclear BARETARGET
+For example, to ignore @code{SIGALRM} signals while
+single-stepping, but treat them normally during normal execution,
+you could define:
@example
define hook-stop
@@ -8031,12 +7354,16 @@ define hook-continue
handle SIGLARM pass
end
@end example
+@end ifclear
-Any single-word command in GDB can be hooked. Aliases for other commands
-cannot be hooked (you should hook the basic command name, e.g. @code{backtrace}
-rather than @code{bt}). If an error occurs during the execution of your
-hook, execution of GDB commands stops and you are returned to the GDB
-prompt (before the command that you actually typed had a chance to run).
+You can define a hook for any single-word command in @value{GDBN}, but
+not for command aliases; you should define a hook for the basic command
+name, e.g. @code{backtrace} rather than @code{bt}.
+@c FIXME! So how does Joe User discover whether a command is an alias
+@c or not?
+If an error occurs during the execution of your hook, execution of
+@value{GDBN} commands stops and @value{GDBN} issues a prompt
+(before the command that you actually typed had a chance to run).
If you try to define a hook which does not match any known command, you
will get a warning from the @code{define} command.
@@ -8380,7 +7707,8 @@ If you are not sure whether you have found a bug, here are some guidelines:
@itemize @bullet
@item
@cindex fatal signal
-@cindex core dump
+@cindex debugger crash
+@cindex crash of debugger
If the debugger gets a fatal signal, for any input whatever, that is a
@value{GDBN} bug. Reliable debuggers never crash.
diff --git a/gdb/doc/gdbinv-s.texi b/gdb/doc/gdbinv-s.texi
index d220a94..e3c625a 100644
--- a/gdb/doc/gdbinv-s.texi
+++ b/gdb/doc/gdbinv-s.texi
@@ -837,19 +837,19 @@ the time of attachment.
@end ifset
@ifset Hviii
-@node Hitachi H8/300 Remote
-@subsection @value{GDBN} and the Hitachi H8/300
-@value{GDBN} needs to know these things to talk to your H8/300:
+@node Hitachi H8 Remote
+@subsection @value{GDBN} and the Hitachi H8/300 and H8/500
+@value{GDBN} needs to know these things to talk to your H8/300 or H8/500:
@enumerate
@item
that you want to use @samp{target hms}, the remote debugging
-interface for the H8/300 (this is the default when
-GDB is configured specifically for the H8/300);
+interface for the H8/300 and H8/500 (this is the default when
+GDB is configured specifically for the H8/300 or H8/500);
@item
-what serial device connects your host to your H8/300 (the first serial
-device available on your host is the default);
+what serial device connects your host to your Hitachi board (the first
+serial device available on your host is the default);
@ignore
@c this is only for Unix hosts, not currently of interest.
@@ -858,34 +858,34 @@ what speed to use over the serial device.
@end ignore
@end enumerate
-@kindex device
-@cindex serial device for H8/300
@ignore
@c only for Unix hosts
-Use the special @code{gdb83} command @samp{device @var{port}} if you
+@kindex device
+@cindex serial device, H8/300 or H8/500
+Use the special @code{@value{GDBP}} command @samp{device @var{port}} if you
need to explicitly set the serial device. The default @var{port} is the
first available port on your host. This is only necessary on Unix
hosts, where it is typically something like @file{/dev/ttya}.
@kindex speed
-@cindex serial line speed for H8/300
-@code{gdb83} has another special command to set the communications speed
-for the H8/300: @samp{speed @var{bps}}. This command also is only used
-from Unix hosts; on DOS hosts, set the line speed as usual from outside
-GDB with the DOS @kbd{mode} command (for instance, @w{@samp{mode
+@cindex serial line speed, H8/300 or H8/500
+@code{@value{GDBP}} has another special command to set the communications
+speed: @samp{speed @var{bps}}. This command also is only used from Unix
+hosts; on DOS hosts, set the line speed as usual from outside GDB with
+the DOS @kbd{mode} command (for instance, @w{@samp{mode
com2:9600,n,8,1,p}} for a 9600 bps connection).
@end ignore
@value{GDBN} depends on an auxiliary terminate-and-stay-resident program
-called @code{asynctsr} to communicate with the H8/300 development board
+called @code{asynctsr} to communicate with the development board
through a PC serial port. You must also use the DOS @code{mode} command
to set up the serial port on the DOS side.
The following sample session illustrates the steps needed to start a
-program under @value{GDBN} control on your H8/300. The example uses a sample
+program under @value{GDBN} control on an H8/300. The example uses a sample
H8/300 program called @file{t.x}.
-First hook up your H8/300 development board. In this example, we use a
+First hook up your development board. In this example, we use a
board attached to serial port @code{COM2}; if you use a different serial
port, substitute its name in the argument of the @code{mode} command.
When you call @code{asynctsr}, the auxiliary comms program used by the
@@ -907,21 +907,22 @@ COM2: 9600, n, 8, 1, p
@emph{Warning:} We have noticed a bug in PC-NFS that conflicts with
@code{asynctsr}. If you also run PC-NFS on your DOS host, you may need to
disable it, or even boot without it, to use @code{asynctsr} to control
-your H8/300 board.
+your development board.
@end quotation
-Now that serial communications are set up, and the H8/300 is connected,
-you can start up @value{GDBN}. Call @code{@value{GDBP}} with the name of your
-program as the argument. @code{@value{GDBP}} prompts you, as usual, with the
-prompt @samp{(@value{GDBP})}. Use two special commands to begin your debugging
-session: @samp{target hms} to specify cross-debugging to the Hitachi board,
-and the @code{load} command to download your program to the board.
-@code{load} displays the names of the
-program's sections, and a @samp{*} for each 2K of data downloaded. (If
-you want to refresh @value{GDBN} data on symbols or on the executable file
-without downloading, use the @value{GDBN} commands @code{file} or
-@code{symbol-file}. These commands, and @code{load} itself, are
-described in @ref{Files,,Commands to specify files}.)
+@kindex target hms
+Now that serial communications are set up, and the development board is
+connected, you can start up @value{GDBN}. Call @code{@value{GDBP}} with
+the name of your program as the argument. @code{@value{GDBP}} prompts
+you, as usual, with the prompt @samp{(@value{GDBP})}. Use two special
+commands to begin your debugging session: @samp{target hms} to specify
+cross-debugging to the Hitachi board, and the @code{load} command to
+download your program to the board. @code{load} displays the names of
+the program's sections, and a @samp{*} for each 2K of data downloaded.
+(If you want to refresh @value{GDBN} data on symbols or on the
+executable file without downloading, use the @value{GDBN} commands
+@code{file} or @code{symbol-file}. These commands, and @code{load}
+itself, are described in @ref{Files,,Commands to specify files}.)
@smallexample
(eg-C:\H8300\TEST) @value{GDBP} t.x
@@ -947,14 +948,14 @@ resumes execution after stopping at a breakpoint. You can use the
@code{help} command at any time to find out more about @value{GDBN} commands.
Remember, however, that @emph{operating system} facilities aren't
-available on your H8/300; for example, if your program hangs, you can't
-send an interrupt---but you can press the @sc{reset} switch!
+available on your development board; for example, if your program hangs,
+you can't send an interrupt---but you can press the @sc{reset} switch!
-Use the @sc{reset} button on the H8/300 board
+Use the @sc{reset} button on the development board
@itemize @bullet
@item
to interrupt your program (don't use @kbd{ctl-C} on the DOS host---it has
-no way to pass an interrupt signal to the H8/300); and
+no way to pass an interrupt signal to the development board); and
@item
to return to the @value{GDBN} command prompt after your program finishes
@@ -963,7 +964,7 @@ to detect program completion.
@end itemize
In either case, @value{GDBN} will see the effect of a @sc{reset} on the
-H8/300 board as a ``normal exit'' of your program.
+development board as a ``normal exit'' of your program.
@end ifset
@ifset SIMS
@@ -973,22 +974,22 @@ H8/300 board as a ``normal exit'' of your program.
@ifset GENERIC
@cindex simulator
@cindex simulator, Z8000
-@cindex simulator, H8/300
+@cindex simulator, H8/300 or H8/500
@cindex Z8000 simulator
-@cindex H8/300 simulator
+@cindex H8/300 or H8/500 simulator
@cindex CPU simulator
For some configurations, @value{GDBN} includes a CPU simulator that you
can use instead of a hardware CPU to debug your programs. Currently,
a simulator is available when @value{GDBN} is configured to debug Zilog
-Z8000 or Hitachi H8/300 targets.
+Z8000 or Hitachi H8/300 or H8/500 targets.
@end ifset
@ifclear GENERIC
@ifset Hviii
-@cindex simulator, H8/300
-@cindex Hitachi H8/300 simulator
-When configured for debugging Hitachi H8/300 targets, @value{GDBN} includes
-an H8/300 CPU simulator.
+@cindex simulator, H8/300 or H8/500
+@cindex Hitachi H8/300 or H8/500 simulator
+When configured for debugging Hitachi H8/300 or H8/500 targets,
+@value{GDBN} includes an H8/300 or H8/500 CPU simulator.
@end ifset
@ifset ZviiiK
diff --git a/gdb/doc/h8-config.texi b/gdb/doc/h8-config.texi
index 05728b0..83c9ba1 100644
--- a/gdb/doc/h8-config.texi
+++ b/gdb/doc/h8-config.texi
@@ -1,18 +1,42 @@
-@set Hviii
-@set HviiiEXCLUSIVE
-@clear NOVEL
-@set BARETARGET
-@set CONLY
-@set DOSHOST
-@set SIMS
-@set AGGLOMERATION
-@clear SERIAL
-@clear VXWORKS
-@clear POSIX
-@clear SPARC
+@c GDB version number is recorded in the variable GDBVN
+@include GDBvn.texi
+@c
+@set AGGLOMERATION
@clear AMDxxixK
+@set BARETARGET
+@set CONLY
+@set DOSHOST
+@clear FSFDOC
+@set Hviii
+@set HviiiEXCLUSIVE
@clear Icmlx
+@clear NOVEL
+@clear POSIX
+@set PRECONFIGURED
@clear REMOTESTUB
+@set SIMS
+@clear SERIAL
+@clear SPARC
@clear STmm
-@set PRECONFIGURED
+@clear VXWORKS
@clear ZviiiK
+@c ----------------------------------------------------------------------
+@c STRINGS:
+@c
+@c Name of GDB program. Used also for (gdb) prompt string.
+@set GDBP gdb
+@c
+@c Name of GDB product. Used in running text.
+@set GDBN GDB
+@c
+@c Name of GDB initialization file.
+@set GDBINIT .gdbinit
+@c
+@c Name of target.
+@set TARGET Hitachi H/300 and H/500
+@c
+@c Name of GCC product
+@set NGCC GCC
+@c
+@c Name of GCC program
+@set GCC gcc