What has changed since GDB-3.5?
(Organized release by release)
+*** Changes in GDB-???:
+
+ * User visible changes:
+
+Remote debugging using the GDB-specific (`target remote') protocol now
+supports the `load' command. This is only useful if you have some
+other way of getting the stub to the target system, and you can put it
+somewhere in memory where it won't get clobbered by the download.
+
+Filename completion now works.
+
+When run under emacs mode, the "info line" command now causes the
+arrow to point to the line specified. Also, "info line" prints
+addresses in symbolic form (as well as hex).
+
+All vxworks based targets now support a user settable option, called
+vxworks-timeout. This option represents the number of seconds gdb
+should wait for responses to rpc's. You might want to use this if
+your vxworks target is, perhaps, a slow software simulator or happens
+to be on the far side of a thin network line.
+
+*** Changes in GDB-4.9:
+
+ * Testsuite
+
+This is the first GDB release which is accompanied by a matching testsuite.
+The testsuite requires installation of dejagnu, which should be available
+via ftp from most sites that carry GNU software.
+
+ * C++ demangling
+
+'Cfront' style demangling has had its name changed to 'ARM' style, to
+emphasize that it was written from the specifications in the C++ Annotated
+Reference Manual, not necessarily to be compatible with AT&T cfront. Despite
+disclaimers, it still generated too much confusion with users attempting to
+use gdb with AT&T cfront.
+
+ * Simulators
+
+GDB now uses a standard remote interface to a simulator library.
+So far, the library contains simulators for the Zilog Z8001/2, the
+Hitachi H8/300, H8/500 and Super-H.
+
+ * New targets supported
+
+H8/300 simulator h8300-hitachi-hms or h8300hms
+H8/500 simulator h8500-hitachi-hms or h8500hms
+SH simulator sh-hitachi-hms or sh
+Z8000 simulator z8k-zilog-none or z8ksim
+IDT MIPS board over serial line mips-idt-ecoff
+
+Cross-debugging to GO32 targets is supported. It requires a custom
+version of the i386-stub.c module which is integrated with the
+GO32 memory extender.
+
+ * New remote protocols
+
+MIPS remote debugging protocol.
+
+ * New source languages supported
+
+This version includes preliminary support for Chill, a Pascal like language
+used by telecommunications companies. Chill support is also being integrated
+into the GNU compiler, but we don't know when it will be publically available.
+
+
*** Changes in GDB-4.8:
- * New features
+ * HP Precision Architecture supported
-GDB now supports array constants that can be used in expressions typed in by
-the user. The syntax is `{element, element, ...}'. Ie: you can now type
-`print {1, 2, 3}', and it will build up an array.
+GDB now supports HP PA-RISC machines running HPUX. A preliminary
+version of this support was available as a set of patches from the
+University of Utah. GDB does not support debugging of programs
+compiled with the HP compiler, because HP will not document their file
+format. Instead, you must use GCC (version 2.3.2 or later) and PA-GAS
+(as available from jaguar.cs.utah.edu:/dist/pa-gas.u4.tar.Z).
-There is also a new directory `gdb/sparclite' that contains a program that can
-be run on a Fujitsu SPARClite processor to demonstrate how the sparc-stub
-remote stub works.
+Many problems in the preliminary version have been fixed.
* Faster and better demangling
demangler. It can now handle type modifiers such as `static' or `const'. Wide
character types (wchar_t) are now supported. Demangling of each symbol is now
only done once, and is cached when the symbol table for a file is read in.
-This results in a moderate increase in memory usage, but a fantastic speedup in
+This results in a small increase in memory usage for C programs, a moderate
+increase in memory usage for C++ programs, and a fantastic speedup in
symbol lookups.
`Cfront' style demangling still doesn't work with AT&T cfront. It was written
from the specifications in the Annotated Reference Manual, which AT&T's
compiler does not actually implement.
- * Improved configure script
+ * G++ multiple inheritance compiler problem
-The `configure' script will now attempt to guess your system type if you don't
-supply a host system type. WE CAN GIVE NO GUARANTEES ABOUT THE VALIDITY OF THE
-GUESSES MADE BY THIS METHOD. The old scheme of supplying a host system triplet
-is greatly preferable over using this. All the magic is done in the new
-`config.guess' script. Examine it for details.
+In the 2.3.2 release of gcc/g++, how the compiler resolves multiple
+inheritance lattices was reworked to properly discover ambiguities. We
+recently found an example which causes this new algorithm to fail in a
+very subtle way, producing bad debug information for those classes.
+The file 'gcc.patch' (in this directory) can be applied to gcc to
+circumvent the problem. A future GCC release will contain a complete
+fix.
-We have also brought our configure script much more in line with the FSF's
-version. It now supports the --with-xxx options. In particular,
-`--with-minimal-bfd' is of interest to those people who want a minimal BFD
-that only supports target file formats.
+The previous G++ debug info problem (mentioned below for the gdb-4.7
+release) is fixed in gcc version 2.3.2.
-We have also cleaned up the issue with the rpc and ptrace header files for
-VxWorks that was discovered at the last minute during the 4.7 release. You
-should now be able to build a VxWorks GDB.
+ * Improved configure script
- * Documentation
+The `configure' script will now attempt to guess your system type if
+you don't supply a host system type. The old scheme of supplying a
+host system triplet is preferable over using this. All the magic is
+done in the new `config.guess' script. Examine it for details.
-There's lots of new internal documentation on how to modify GDB, and produce
-clean changes to the code. We implore people to look at this before submitting
-changes.
+We have also brought our configure script much more in line with the FSF's
+version. It now supports the --with-xxx options. In particular,
+`--with-minimal-bfd' can be used to make the GDB binary image smaller.
+The resulting GDB will not be able to read arbitrary object file formats --
+only the format ``expected'' to be used on the configured target system.
+We hope to make this the default in a future release.
+
+ * Documentation improvements
+
+There's new internal documentation on how to modify GDB, and how to
+produce clean changes to the code. We implore people to read it
+before submitting changes.
+
+The GDB manual uses new, sexy Texinfo conditionals, rather than arcane
+M4 macros. The new texinfo.tex is provided in this release. Pre-built
+`info' files are also provided. To build `info' files from scratch,
+you will need the latest `makeinfo' release, which will be available in
+a future texinfo-X.Y release.
+
+*NOTE* The new texinfo.tex can cause old versions of TeX to hang.
+We're not sure exactly which versions have this problem, but it has
+been seen in 3.0. We highly recommend upgrading to TeX version 3.141
+or better. If that isn't possible, there is a patch in
+`texinfo/tex3patch' that will modify `texinfo/texinfo.tex' to work
+around this problem.
-The GDB manual uses new, sexy Texinfo conditionals, rather than the arcane M4
-macros. This requires the use of the new Texinfo program, which is available
-from the same place that you got this copy of GDB.
+ * New features
-*NOTE* The new Texinfo program produces TeX output that can cause old versions
-of TeX to hang. We're not sure exactly which versions have this problem, but
-it has been seen in 3.0. We highly recommend upgrading to TeX version 3.141 or
-better. If that isn't possible, there is a patch in `texinfo/tex3patch' that
-will modify `texinfo/texinfo.tex' to work around this problem.
+GDB now supports array constants that can be used in expressions typed in by
+the user. The syntax is `{element, element, ...}'. Ie: you can now type
+`print {1, 2, 3}', and it will build up an array in memory malloc'd in
+the target program.
- * Mmalloc now licensed under the GNU Library General Public License
+The new directory `gdb/sparclite' contains a program that demonstrates
+how the sparc-stub.c remote stub runs on a Fujitsu SPARClite processor.
* New native hosts supported
HP/PA-RISC under HPUX using GNU tools hppa1.1-hp-hpux
-
-386 CPUs running SCO Unix i386-unknown-scosysv322 or sco
- (core file support added)
386 CPUs running SCO Unix 3.2v4 i386-unknown-sco3.2v4
* New targets supported
* New file formats supported
-BFD now has minimal support for reading HP/PA-RISC executables (SOM?), and
-HPUX core files. We can't write them yet.
+BFD now supports reading HP/PA-RISC executables (SOM file format?),
+HPUX core files, and SCO 3.2v2 core files.
- * New commands
+ * Major bug fixes
-We now accept --silent as an alias for --quiet.
+Attaching to processes now works again; thanks for the many bug reports.
- * Major bug fixes
+We have also stomped on a bunch of core dumps caused by
+printf_filtered("%s") problems.
-This version fixes the attach problem that many of you reported. We have
-also stomped on a bunch more printf_filtered("%s") problems.
+We eliminated a copyright problem on the rpc and ptrace header files
+for VxWorks, which was discovered at the last minute during the 4.7
+release. You should now be able to build a VxWorks GDB.
-You can also now ^C a gdb that is attached to a process. This will cause the
-attached process to stop, and give control back to GDB.
+You can now interrupt gdb while an attached process is running. This
+will cause the attached process to stop, and give control back to GDB.
-We also fixed a lot of problems associated with either not closing file
-descriptors, or using too many. This was especially a problem for programs
-that used many (~100) shared libraries.
+We fixed problems caused by using too many file descriptors
+for reading symbols from object files and libraries. This was
+especially a problem for programs that used many (~100) shared
+libraries.
+The `step' command now only enters a subroutine if there is line number
+information for the subroutine. Otherwise it acts like the `next'
+command. Previously, `step' would enter subroutines if there was
+any debugging information about the routine. This avoids problems
+when using `cc -g1' on MIPS machines.
- * Library changes
+ * Internal improvements
- * Configuration
+GDB's internal interfaces have been improved to make it easier to support
+debugging of multiple languages in the future.
- * New hosts supported
+GDB now uses a common structure for symbol information internally.
+Minimal symbols (derived from linkage symbols in object files), partial
+symbols (from a quick scan of debug information), and full symbols
+contain a common subset of information, making it easier to write
+shared code that handles any of them.
+
+ * New command line options
+
+We now accept --silent as an alias for --quiet.
+ * Mmalloc licensing
-PA/HPUX support (cleaned up), uses unwind info, needs gcc/gas...
-HP300 native support (???)
-Vax Ultrix native (was already there)
-step only goes into a subr if there is line # info present
-rs6000 bug fixes...
-Language interfaces
-VxWorks/rpc problems resolved
-symbols/psymbols/msymbols combined
-Lotsa host/native/target stuff cleaned up
-
-Don Allen
-Gerald Baumgartner
-Michael Ben-Gershon
-Art Berggreen
-Karl Berry
-Per Bothner
-Ralph Campbell
-John Carr
-Steve Chamberlain
-Lee W. Cooprider
-John Eaton
-Paul Eggert
-John M. Farell
-Fred Fish
-Eddie Fung
-John Gilmore
-Carl Greco
-Stu Grossman
-Robert R. Henry
-Nobuyuki Hikichi
-Andy Jackson
-Mark Jungerman
-Brian Kernighan
-Alexander Klaiber
-Jeffrey Law
-Marty Leisner
-Ulf Linde
-Roland H. Pesch
-K. Richard Pixley
-Ken Raeburn
-Dennis Ritchie
-Rob Ryan
-Peter Schauer
-Lynn D. Shumaker
-Richard Stallman
-Allan Steel
-Johanthan Stone
-Ian Lance Taylor
-Michael Tiemann
-Minh Tran-Le
-Martin Walker
-
-david d `zoo' zuhn
+The memory-mapped-malloc library is now licensed under the GNU Library
+General Public License.
*** Changes in GDB-4.7: