* New features and minor improvements
- More fixes for perl 5.8.x -- it's now a lot more usable.
- Fixes for Sun's SunONE Studio dbx (1). Build with -DHAVE_SUNDBX is
necessary. Improvements for automatic detection of Sun DBX are welcome.
- Fixes for MacOS X (mainly workarounds for bugs in gdb) (2).
- Support for PHP debugger has been added (1). This is essentially not
tested.
- Source files in subdirectories should be located automatically
when using dbx (tested on Solaris' dbx) (2).
- The perl version supported by DDD is now 5.8.x. The perl debugger
changed between perl 5.6.x and perl 5.8.0, which made this update necessary.
This change is not backwards-compatible. If it is not possible to upgrade
your perl version to 5.8.x or newer, then you can simply install the file
"perl5db.pl" from a recent perl distribution into your old perl tree.
- Through the maintenance menu ("ddd --maintenance"), it now possible to get
a leak check of ddd if ddd is run under valgrind. This is only useful for
ddd developers (or anybody that wants to help making ddd better).
- Several minor bugs fixed, some memory leaks plugged, more code clean-up
done.
- A bug affecting platforms where the size of function pointers is 16 has
been fixed.
- The settings window now starts at a larger, more reasonable size, and
allows the user to resize it.
* Build fixes
- automake 1.9 is now the minimum requirement. This affects only builds
from CVS repository.
- A warning is emitted if a version of g++ older than 3.1 is used.
- libiberty is neither linked nor bundled anymore.
- GNU libtermcap is not bundled anymore. A termcap like library (such as
ncurses) is now required to build ddd.
- The configure machinery has been updated to conform more closely to the
autoconf 2.5x requirements. Several bugs have been fixed.
Minimum requirements: autoconf 2.59, automake 1.7.9, libtool 1.5.
- libiberty (which provides missing standard functions) is not linked by
default anymore. configure has a new option '--with-libiberty' that
enables the libiberty support if required.
If nobody complains, libiberty will be unbundled in a next version.
- The libiberty distributed with ddd has been upgraded to the one included
in GCC 3.4 20040116. It fixes some configuration problems.
- Builds with GCC 3.4, with IBM xlC on AIX, with Compaq/HP cxx on Tru64,
on X11R5 based systems, with SGI CC on IRIX should be OK.
- Builds on HP-UX should now work out-of-the-box. Motif is linked statically
and the Athena libraries are now found by default.
- Builds without Motif/Lesstif available abort with an adequate message.
- Builds with readline support now work. readline is not bundled anymore.
- Builds without -DNDEBUG (i.e. with "assert" enabled) now work.
Default build enables assertions (i.e. -DNDEBUG is not used).
- Several missing files in the distribution are now included.
- Cygwin is supported again.
systems where the "compfaces" program from the "faces" package is
installed. A dependence on the "faces" package isn't necessary because
the "compfaces" program isn't really used. This fix the first part
of PR pkg/22762 by myself.
This closes pkg/12893 from Martti Kuparinen <martti.kuparinen@iki.fi>
Changes are
- data themes
- debugger interaction while the program is running
- support for JDB 1.2
- several bug fixes
More information is available at ftp://ftp.gnu.org/pub/gnu/ddd/NEWS
Changes are:
============
Documentation
-------------
- There is a new DDD manual, generated from Texinfo source, and coming
in HTML, PDF, PostScript, Info, as well as plain text format.
Debuggers and Languages
-----------------------
- This release contains partial support for DEC's `ladebug' debugger.
Please send in bug reports listing remaining problems.
- Parsing of JDB data has been improved.
- DBX prompts for object file names are recognized.
User Interface
--------------
- `Breakpoint Properties', `Define Command', and `Debugger Settings'
have an `Apply' button that applies changes to text fields.
- In TTY mode, you can edit and complete the command line as in GDB.
(Uses GNU readline library.)
- Ctrl+E moves the cursor to the end of the line. For a `Run'
shortcut, use F2/F3 or Shift+Ctrl+E.
- DDD uses the locale as specified by the environment (such as $LANG).
This allows input of locale characters in DDD dialogs; error
messages may also come up in your locale. If you experience any
problems, set LANG=C when invoking DDD.
Plotting
--------
- If you have several indexed variables in a cluster (such as X[1],
X[3], and X[5]), DDD plots the cluster as 2-D plot, where the X axis
shows the index, and the Y axis shows the values. This is useful for
plotting array slices (see below).
Source Navigation
-----------------
- Using GDB, `Open Source' no longer automatically reads all shared
libraries of the debuggee; this took too much time with some programs.
There is an additional button that loads libraries.
Data exploration
----------------
- You can rotate structs, saving space by omitting the member names.
A rotated struct looks very much like a horizontal array.
- The last rotation setting is used for new displays and is saved
together with other DDD options.
- Array slices `ARRAY[FROM..TO]' are much better supported:
* By default, the displayed values are clustered and displayed like an
ordinary array.
* Array slices can be plotted, too (see `Plotting', above).
- You can use the FROM..TO notation in arbitrary values, and also multiple
times; `graph display 1..5 * 1..5' creates a multiplication table.
- To select multiple displays, it suffices that the selection rectangle
touches a display (rather than enclosing it entirely).
- The Display Editor has buttons for clustering and unclustering displays.
Running the Program
-------------------
- Breakpoint commands are also supported for DBX, Perl, and XDB.
- In Perl, DDD supports temporary breakpoints.
Settings
--------
- DDD saves the GDB source directory path with the current session.
- DDD saves the JDB class path only with the current session.
Bug Fixes
---------
- Auto-raised menus work much better (enabled by default).
- The `floating' command tool now correctly follows movements of the
main window under KDE and other window managers.
- The register window is updated when the current frame changes.
- Value tips of strings containing ` = ' are displayed correctly.
- In file names, `//' is no longer normalized to `/'. This is useful
for special file systems, where '//c/foo' is an alias for `c:\foo`.
- Improved session management: `checkpoint sessions' not needed for shutdown
(as initiated by GNOME) are automatically deleted after exiting DDD.
- Improved auto-command recognition (includes saving displays across sessions)
- [LessTif] Selecting all displays in the Display Editor now works.
- [DBX] The array syntax `graph display [A..B]' works again for DBX.
- [DBX] Redirection to the execution window with Sun DBX 4.0 no
longer clutters program arguments.
- [Perl] Selecting identifiers that represent large data structures no longer
blocks DDD.
- [JDB] Thread names with dashes are handled correctly.
- [HP-UX] Renaming the `~/.ddd/init' file during saving options works.
- [Build] New `libiberty' and `configure' packages from GDB 4.18.
- [Build] If supported, `-isystem' is used for including system headers.
- [Build] If supported and required, `-fpermissive' is used for old X headers.