This is the dddebugger product version v2_2. It contains the Data Display Debugger version 2.2.x or 2.1.x from http://www.cs.tu-bs.de/softech/ddd/ which requires an X window terminal to be useful, and can act as a front end for either gdb from the (gdb product) or dbx (from the vendor's compiler suite). specifically, the following flavors contain the following binaries: Flavor Binary ------ ------ IRIX+5 ddd-2.1-mips-sgi-irix5.3 IRIX+6 ddd-2.2.3-mips-sgi-irix6.2 AIX+3 ddd-2.1-rs6000-ibm-aix3.2.5 AIX+4 ddd-2.2.1-rs6000-ibm-aix4.1.5.0 SunOS+5 ddd-2.2.3-sparc-sun-solaris2.4 OSF1+V3 ddd-2.1.1-alpha-dec-osf3.2 OSF1+V4 ddd-2.2.1-alphaev5-dec-osf4.0b Linux+2 ddd-2.2.3-i586-pc-linux-gnulibc1-static The changes from previous ddd versions are listed below; the last Fermilab release of ddd was bundled with the gcc product, and was ddd version 1.4d DDD News -*- text -*- ******** DD 2.2.3 --------- DDD 2.2.3 fixes some problems reported for DDD 2.2.2: - `struct' recognition with DBX now works again. (This one was serious.) - `configure' now checks for correct ISO C++ . - DDD now runs under the `tvtwm' virtual desktop. - DBX Settings now work with Solaris DBX. DDD 2.2.2 --------- DDD 2.2.2 brings improved FORTRAN support, improvements in the data display and fixes some minor bugs introduced in DDD 2.2. User-visible changes to DDD 2.2.1: - Improved FORTRAN support. When debugging FORTRAN programs with GDB, DDD now supports FORTRAN array indexing syntax, FORTRAN pointer recognition, and lookup of FORTRAN functions with trailing underscore `_'. - The data display is now scope-sensitive: displays are automatically hidden as they become inactive (out of scope) and redisplayed as they become active again. This is handy when maintaining a multitude of displays in different scopes. For details, see the `hideInactiveDisplays' resource. - Faster data exploration. Double-clicking... * ...on a pointer value: dereferences it. * ...on a partially hidden value: shows more detail. * ...on a fully shown value: hides it again. - A display resize (due to value changes) now automatically `bumps' adjacent displays such that they are not obscured; see the `bumpDisplays' resource for details. - Case-insensitive search in the source text is now supported; see the `findCaseSensitive' resource for details. Bug fixes: - Getting and identifying core dumps now works on Solaris, AIX and other architectures. - `Edit' no longer causes DDD to crash. - The separate execution TTY now works with Sun DBX 4.0. - Improved XDB support. XDB output no longer causes DDD to hang. - Improved SGI DBX support. File positions are now recognized; DBX Settings work, too. - Various quirks and memory leaks in the interaction between DDD and the inferior debugger have been fixed. Changes in debugging DDD: - The interaction between DDD and the inferior debugger is now logged in `~/.ddd/log'. This is useful for bug reports. - DDD dumps core upon fatal errors (but resumes execution). This is useful for bug reports. Changes in configuration and building: - GCC 2.8.0 is supported. There are also some more minor improvements and bug fixes; see the `ChangeLog' file for details. DDD 2.2.1 --------- DDD 2.2.1 fixes some minor bugs introduced in DDD 2.2. User-visible changes to DDD 2.2: - When saving a session, you can now select the method for getting core files. This is useful on Solaris and SunOS systems. Bug fixes: - Auto-raised menus have caused problems on some architectures: they are now disabled by default. Use `Ddd*autoRaiseMenu: true' in `~/.ddd/init' to re-enable them. - By default, DDD stops disassembling after 1024 bytes. This is useful when working with the machine code of huge functions. See the `maxDisassemble' resource for more info. - Several status and diagnostic messages have been reworked; they now show the outcome of a command. - DDD now works around a bug present in Linux libc 5.4.38 to 5.4.40 that prevented DDD <-> GDB communication. - The `gcore' method for getting core files is now fully supported. - Various glitches in command queue management have been fixed: * Interacting with the debuggee (or interrupting it) now properly discards pending debugger commands. * In `--tty' mode, DDD can now handle long command sequences. This is useful when running DDD from Emacs. * In `--tty' mode, you can now send EOF (^D) characters to the debugged program without having DDD terminate GDB. - Trying to open non-existent source files no longer confuses GDB. - When running in the background, DDD is no longer interrupted by `tty output' signals upon initializing the execution window. - PushButton menus work with LessTif >= 0.82 and with OSF/Motif 1.1. - Command tool decoration has been improved and should now work with all X window managers. Changes in configuration and building: - GNU libiberty and the GNU configure scripts are now up-to-date. - The EGCS C++ compiler is supported (see `http://www.cygnus.com/egcs/'). There are also some more minor improvements and bug fixes. See the `ChangeLog' file for details. DDD 2.2 ------- DDD 2.2 brings persistent sessions, an improved user interface, attaching to running processes, display shortcuts, and more. User-visible changes to DDD 2.1: - Persistent sessions. * You can now save the entire debugger and process state and resume the session later. * Saved state includes process memory and state, inferior debugger settings, breakpoints, and data displays. * X11R6 sessions are supported, too. When used with a session manager, DDD saves and restores its entire state. * Persistent sessions work best with GDB; DBX and XDB are partially supported, too. - Improved user interface. * DDD now requires less width and height. * Source line numbers have been turned off (can be restored); the breakpoint area extends to the first non-blank character. * The `Disable ()' button for disabling displays has gone; displays are now enabled or disabled via `Show ()/Hide ()'. * The `Break at ()' and `Clear at ()' buttons have been merged into one single dynamic button. * The `Windows' menu is now called `View', complying with the Motif style guide. * Options are now grouped according to their functionality. The `Options' menu has gone. Use `Edit' instead. * The `Edit' menu has been completely rewritten, allowing for better clipboard operations. For instance, you can now copy selected displays to the clipboard and paste them later. * Several buttons provide new pulldown menus with useful functions. - Improved command tool. * The command tool is always auto-raised, i.e. placed on top of the DDD windows. * The command tool always comes with window manager decorations, such that you can easily move it around. * The command tool sticks to the DDD source window: if you move the DDD source window around, the command tool follows. - Display shortcuts. Once you have changed `p' to `(char *) p' manually, DDD provides a menu shortcut for converting arbitrary values to `(char *)'. - Button editor. User-defined buttons can now be defined, changed, and deleted at run-time. - Support for debugging processes running outside of DDD. You can attach to a running process, examine it, and resume execution. - Helper customization. You can now interactively select and customize the applications to be used for the execution window, for editing source code, for browsing the DDD WWW page, etc. - Improved online manuals. * Multiple manual browsers are supported. * Manual browsers are realized as top-level windows. * DDD no longer blocks while the manual is uncompressed and formatted. * DDD stores manuals in `gzip' format, saving space in executables. - New `What Now?' help. Gives a hint on what you can do next, depending on the current DDD state. Useful for beginners. - Improved data display. * Displayed data is highlighted whenever it changes. * Two-dimensional arrays are now laid out as tables. * Numerical values are now aligned to the right. * You can now incrementally `Show More' details of an object, instead of showing all details at once. * Processing displays can be interrupted by typing Ctrl+C. - Drag and drop support. * You can now alter the current execution position interactively by dragging and dropping the execution arrow. This allows you to back up - perhaps with more breakpoints set-over a portion of a program that has already executed, in order to examine its execution in more detail. * Breakpoints can be dragged and dropped, too. This allows you to move breakpoints to alternate positions, without changing their properties. - Improved display of breakpoints and execution positions. * The current execution position is now properly cleared if undetermined (no source, program terminated, etc.) * If the program stopped due to a signal, this is indicated by a lightning symbol within the current execution glyph. * Faster scrolling. While scrolling source or machine code at high speed, glyphs are now unmapped. Slow scrolling still shows glyphs. - Improved DBX and XDB support. * DDD supports DBX and XDB breakpoint conditions. * With SUN DBX 3.x, DDD also supports disabled breakpoints and ignore counts. - User-defined DDD commands. DDD now provides a simple facility that allows the inferior debugger to execute DDD commands. For details, see `User-Defined Commands' in the DDD manual. - For `Continue Until Here', DDD now sets a temporary breakpoint and continues (instead of using the GDB `until' command). If the temporary breakpoint is not reached, it is deleted. - When restarting DDD, all settings (data displays, execution position, etc.) are preserved. - When DDD becomes ready after a user command, it automatically uniconifies itself. Hence, you can iconify DDD while it runs a program; DDD pops up again as soon as a breakpoint is hit. - Characters typed into the data and source windows are now forwarded to the debugger console. - Resource files have been renamed. All files are now located under `~/.ddd/'. The file `~/.dddinit' has been replaced by `~/.ddd/init'; `~/.ddd_history' is now `~/.ddd/history'. The new directory `~/.ddd/sessions/' contains saved DDD sessions. - Your window manager should now show multi-color DDD icons. (requires XPM; can be disabled) - During start-up, DDD shows a multi-color logo in a transient window. (requires XPM; can be disabled) - DDD now typically requires 35% less memory. This was achieved by compiling and optimizing DDD regular expressions at compile time, rather than generating them at run time. Supported platforms and configurations: - Support for Linux with GNU libc 5.4.38 and later included. - Support for XDB on HP-UX 10.x included. Thanks to Robert Wiegand . - Support for SUN DBX 3.2 included. Bug fixes: - DDD no longer hangs while receiving large chunks of data. - DDD now also works with echoing TTY connections. - Significant speed-ups in processing debugger and program output. - Several memory leaks and X resource leaks have been tightened. - DDD no longer requires the librx library. Consequently, librx errors can no more cause DDD to crash. - A serious bug that caused timers to be inadvertently removed has been fixed. Bug effects included loss of console cursor, loss of data display contents, and loss of scrolling capabilities. - DDD now handles GDB `' output correctly. - And again, hundreds of minor improvements and bug fixes. See the ChangeLog for details. DDD 2.1.1 --------- DDD 2.1.1 includes some hacks that make DDD run with LessTif, a free Motif clone, without loss of functionality. DDD now no more depends on proprietary software like OSF/Motif. Apart from these hacks, functionality is unchanged with respect to DDD 2.1 (no new features, no bug fixes). If you have DDD 2.1 up and running, there is no need to upgrade to DDD 2.1.1. As of this release, DDD is included in GNU CD-ROMs by the Free Software Foundation (aka the GNU people). DDD distributions are now numbered according to the GNU Maintenance Instructions. DDD 2.1 ------- DDD 2.1 brings alias detection, local variable displays, button and value tips as well as several new features and bug fixes. User-visible changes to DDD 2.0: - Alias detection. DDD now recognizes that multiple displays reference the same object. This allows the examination of shared data structures (circular lists, DAGs, and so on). Alias detection slows down DDD a bit, so it is turned off by default. - Local variable displays. You can display all local variables and arguments in the data display. The display is automatically updated to reflect the list of variables and their values. - Status displays. You can now view the output of a debugger command in the data window, using "graph display `COMMAND`". For instance, local variable displays are realized via "graph display `info locals`". - Button tips. Moving the mouse pointer over a button causes a small hint window (aka `balloon help') to raise. (optional) - Value tips. Moving the mouse pointer over a variable causes a small window to raise showing the current value. (optional) - The status line has been reworked and extended: * It displays information about the selected item. * It has moved to the bottom, such that menu entries can be described. (can be restored) * It contains a debugger status indicator, blinking whenever the inferior debugger is busy. (can be turned off) * You can re-display the most recent messages. - The register window can display floating-point registers. - Thread support. You can inquire existing threads and switch among them. (requires GDB and operating system thread support) - In `one single window' mode (now default), you can disable specific window parts (e.g. data displays, debugger console, etc.) through the `Windows' menu. - The `Preferences' panel has been extended and reworked: * Button tips and value tips can be enabled and disabled. * Tab width and graph grid size can now be changed at run time. * You can choose at run time whether command buttons should be placed in the command tool (as in DDD 2.0) or in the source window (as in DDD 1.x). * You can reset the DDD preferences to the least recently saved settings. - Some items have been renamed for clarity: * The `Stack' menu is now named `Status', as it hosts other status-related items besides backtrace and registers. * The `Break' button is now named `Interrupt' (as in DDD 1.x), to avoid confusion with the `Break At' button. * The `Quit' menu item is now named `Abort', to avoid confusion with the `Exit' menu item (which issues a `quit' command). - Some key bindings have been re-assigned. Generally, `Ctrl' invokes debugger or editing commands, and `Alt' changes debugger settings. Hence, Ctrl+M invokes `make' and Ctrl+Q invokes `quit', while Alt+M enables or disables the machine code window. `Run' is now on Ctrl+X (for eXecute). - DBX settings can now be viewed and changed at run time, using the `Settings' panel. - In GDB, there is a `status displays' panel for displaying various things about the program being debugged. - Reading the VSL library is now realized as a background job, reducing startup time drastically. - In the data window, the middle mouse button now toggles the display selection instead of simply extending it. - The most important data window operations can now also be invoked via the debugger console. For instance, the command `graph display *next at (50, 50) dependent on 1' creates a new dependent display at (50, 50). In the long term, this feature will be used to save and restore display state. - In the debugger console, the right mouse button invokes a small popup menu which you can use to clear the line or the window. - Ever suffered from a frozen display while debugging a modal application? If the debugged program is interrupted in some modal state, DDD will automatically make it ungrab the pointer. - You can now clear all argument fields `()' by clicking on the prompt `():'. - In the source argument field `()', pressing RETURN activates the `Lookup ()' button. - `Save Options' saves window sizes for later DDD sessions, as well as the relative position of the command tool. - Unnecessary redisplays have been significantly reduced, causing much less flickering. - If you specify some overloaded or ambiguous identifier, DDD now lets you select from all alternatives. - Buttons not supported on certain debuggers (for instance, `Finish' on DBX) are now made insensitive. (optional) - You can now invoke `make' from DDD, reusing old `make' arguments from the command history if desired. - There is a new integrated manual browser showing manual pages and info files for DDD as well as for the inferior debugger. A simple search facility is also included. Documentation: - The PostScript copy of the manual has been enriched with more than 30 color screen shots showing DDD usage. - A `sample.dddinit' file is included in the distribution containing several examples for further customization. Changes in configuration and building: - DDD 2.1 uses improved configuration checks from Autoconf 2.12. - DDD no longer installs in the `gcc' location by default, but in an existing DDD location; otherwise, in `/usr/local/bin'. - Improved means of determining builder's e-mail address. - DDD beta releases and DDD snapshots expire after a few weeks. Bug fixes: - Using DBX, comments were stripped from source code under certain circumstances. Fixed. - The sash to resize the assembler window is back again. - With XDB, sources are found in alternate directories, too. - With DBX, the current source line was omitted from the listing under certain circumstances. Fixed. - With Sun DBX, DDD uses the DBX display numbers instead of generating own numbers. - `Help on Version' no longer includes the entire DDD configuration. - Several single-letter options like `-d DIR' are now properly passed down to the inferior debugger. - `Select All' followed by `Delete' no more causes DDD to crash. - Problems with button specs ending in `...' have been fixed. - Line continuations (i.e. lines ending in `\') are properly handled. - Problems in building the `vsl' and `test-graph' programs are fixed. - On Linux, drag-and-drop of pixmaps has been disabled explicitly. (Several Linux Motif configurations are broken in this aspect.) - DDD now sets the WM_COMMAND resource such that X session managers can save and restore DDD state. - The data window now uses a command queue for operations on data displays. No more `The debugger is busy' messages. - Improved handling of template-generated class names and optimized-out structs. - And again, dozens of minor bug fixes and improvements. Release policy: - Due to the large amount of testing, we make new DDD releases only every six months or so. If you found a bug and fixed it for us or just reported it to us so we could fix it, then this release scheme may not be good enough for you. Therefore, we now also have a daily snapshot of our CVS repository. See the DDD WWW page `http://www.cs.tu-bs.de/softech/ddd/' for details. DDD 2.0 ------- DDD 2.0 brings XDB support, extended DBX support, an improved user interface as well as several new features and bug fixes. User-visible changes to DDD 1.4: - New command tool. All command buttons that do not take arguments are now located in the command tool, a small separate window. The command tool can be moved wherever appropriate, leaving more space for window contents. - User-defined buttons are now available. These can also be used to re-install the old command buttons. - Colored displays. You can specify individual colors for pointers, arrays, structs, and so on. - Variable values can now be altered interactively during program execution. - You can inquire the types of variables and functions (`whatis') through the source popup menu. - Selecting a data display item now also sets the `()' argument field in the source window, making it available for further commands. - `New display' subsumes `Dependent display': if a display is selected, the new display is made dependent on it. - `Show Detail' expands the entire selected value, including all contained sub-structures. - Option editors. New panels for DDD preferences and GDB settings. GDB settings can be saved across DDD sessions. - Some items have been renamed for further clarity: * The `command window' is now named `debugger console', to avoid confusion with the command tool. * The `Interrupt' button is now named `Break', to associate the concept with `Breakpoints'. * The `Break ()' and `Clear ()' buttons are now named `Break at ()' and `Clear at ()', respectively. * The `Dereference' button is now named `Display *'. - DDD now supports GDB-like incremental search in the command history. It is invoked through Ctrl+R and Ctrl+S in the debugger console. - Incremental search required some changes in keyboard shortcuts. `Run' is now Ctrl+Z, `Step' is Ctrl+I, and `Next' is Ctrl+J. - The `Save Options on Exit' function has been removed, as it also saved options given upon DDD invocation like `--dbx' or `--exec-window'. Options must now always be saved explicitly. - You can press Ctrl+\ to interrupt programs using a QUIT signal. - Ctrl+C and Ctrl+\ now have the highest priority of all events. - Improved remote debugging. In contrast to `--host', the new `--rhost' option uses `rsh' without arguments (aka `rlogin') to access the remote debugger. DEC and SGI DBX require this. - The DDD License can now be viewed from within DDD. - DDD resources and actions are now fully documented; the DDD manual contains several customization examples (fonts, colors, buttons). Supported debuggers and languages: - XDB support. On popular request, DDD now also supports HP's XDB as inferior debugger. - Extended DBX support. DDD determines DBX properties at run-time and adapts automatically to a wide range of DBX variants. - Even more DBX support. DDD now supports DBX on SUN, DEC, AIX, and IRIX systems. - Language support. DDD uses Pascal-style dereferencing (X^ instead of *X) if the current frame was written in Pascal, Ada, or Modula. (GDB only) - Modula-3 support. DDD supports `m3gdb', a GDB extension for Modula-3. Thanks to Peter Klein . Changes in configuration and building: - New top-level `configure' script. DDD now uses an `autoconf'- generated top-level `configure' script instead of Cygnus `configure'. Among other advantages, configuration options are now properly passed down to subdirectory configuration. - Regular expressions now use the POSIX.2 standard regcomp/regexec interface. The slower interface is compensated by smarter calls. - DDD configuration now generally attempts to link with native system libraries wherever possible. GNU termcap and librx are used only if the system does not provide them. This results in smaller and (hopefully) safer DDD executables. - DDD configuration tests whether your C++ compiler can compile a `hello, world' program. It is amazing how many misconfigured C++ compilers exist in the world. - You can specify `--without-athena' to avoid searching for and linking with Athena libraries. - Patches for AIX xlC, Sun CC, GCC 2.8.0 and probably other C++ compilers included. Thanks to Jacek Holeczek and Jason Merrill . - DDD now compiles and runs unchanged with LessTif, a free Motif clone under construction. Note that `runs' is relative: As of LessTif 0.50, DDD is still far from being usable. This will change as LessTif evolves. Bug fixes: - Improved directory support. Sources and executables can reside in several different directories. With DBX and XDB, DDD optionally uses full file paths when referring to source positions. - Several TTY problems fixed. Switching between execution window and debugger console should work fine now; the execution window can be opened, closed and re-opened without DDD crashing or hanging. - The terminal type (TERM environment variable) of the debugger console and the execution window is now properly set. - Editor problems fixed. Invoking a source editor via `Edit' should work fine now. - The rubber band outline no more clutters the data display. (This was a GCC optimization bug.) - No more endless scrolling when glyphs are enabled. Scrolling is slightly faster, too. - On HP-UX, the `@' character is no more discarded from GDB input. - On Solaris 2.x, annoying DBX warnings like `dbx: -r option only recognized for C++' are silently ignored. - You can now specify the location of own VSL libraries via the `vslPath' resource. - Improved diagnostics (file names and line numbers) for VSL errors. - The `--attach' and `--separate' options are no more overridden by the settings in `~/.dddinit'. - The `-synchronous' option (for X debugging) now works; `--synchronous-debugger' has been renamed to `--sync-debugger'. - The source window no more scrolls back to some previous position when adding or removing breakpoints. - Pagers (`more', `less', etc.) invoked by the inferior debugger are properly handled. (When seeing `--More--', DDD hits the space key.) - And, of course, hundreds of minor bug fixes and improvements. Release policy: - Before every new feature release (like this one), we shall make beta releases publicly available. They are named like the major release, but have `beta' and a number appended. For instance, this release was preceded by `ddd-2.0beta1', `ddd-2.0beta2', and so on. Beta releases will be announced in DDD mailing lists only. DDD 1.4d -------- Bug fix release; fixes problems introduced in DDD 1.4c. Changes to DDD 1.4c: - Several people have reported problems accessing the fonts specified in DDD 1.4c. We have thus now re-enabled the scheme from DDD 1.4b; how to change fonts is explained in the DDD FAQ. - Various fixes for C++ compilers other than GCC included (notably Sun CC 4.0 on Solaris 2.x) - The VSL interpreter can now be controlled upon DDD invocation; type `ddd --vsl-help' for a list of options. This is intended for debugging forthcoming display customization. This release should configure, compile and run out-of-the-box on OSF systems. Please let us know about any remaining problems. DDD 1.4c -------- Bug fix release. No user-visible changes. Changes to DDD 1.4b: - Major restructuring of `ddd.C', the DDD main program; compilation should now require slightly more time, but much less memory. Due to the large number of new files, diffs to earlier versions are somewhat larger than usual. - Font sizes are now resolution-independent, resulting in larger font sizes on high-resolution displays. - The built-in manual page is now compressed, resulting in slightly smaller executables. - Improved DBX 3.x support. Thanks to Grant McDorman . - Improved DEC Alpha/OSF support. Thanks to Phil Brooks . - Several minor and two major bugs were found and fixed. DDD 1.4b -------- Bug fix release. Changes to DDD 1.4a: - Much faster start-up, due to delayed parsing of the VSL library. - Custom paper size support for printing graphs. - Paper size and printing command is saved with options. - On some X11 configurations, DDD was caught in a busy loop upon invocation. Now fixed. - On some Linux configurations, DDD crashed immediately upon invocation. Now fixed. - Manual update of data display (`graph refresh') improved. - `set' and `assign' commands automatically update the data display. - New releases of top-level `configure' and `libiberty' included. - Building DDD creates executable with canonical name. DDD 1.4a -------- Bug fix release. No user-visible changes. - Compilation trouble with older GCC versions as well as older C++ compilers fixed. - Compilation in separate directory fixed. - For older GDB versions, one may use `display /x $pc' and `print /x $pc' to get the current PC value. - Minor bugs in construction and installation fixed. DDD 1.4 ------- DDD 1.4 realizes the top ten suggestions of DDD users. It brings the long awaited machine code support, new breakpoint and execution symbols, improved DBX support, enhanced integration facilities and many small features and improvements. Changes to DDD 1.3: - Full machine code support: Assembler and register windows, Breakpoints in machine code, no-source debugging, stepping over instructions. (GDB only) - Breakpoints and the current execution position are displayed as stop signs and arrow symbols (``glyphs'') instead of text. Our students find that cute; the old mode is still available. - New argument editor: Upon program start, select from a list of previously used program arguments. - Using the new `--tty' option, DDD can be easily integrated with other GDB/DBX front-ends. For instance, you can have DDD run as an inferior debugger from your Emacs GDB-mode, having all Emacs and DDD facilities at your disposition. - Improved C++ support with DBX 3.x. Thanks to Grant McDorman . - Displays with format expressions (`/x') are properly dereferenced. - Improved position history mechanism. - Automatic reloading of source files when the debugged program has changed; explicit reload is no longer required. - File selection dialogs are synchronized: changing the directory in one dialog also changes the directory in all others. - Interactive dialogs for disambiguating C++ names. - Several major and minor bugs have been fixed. Special thanks to Grant McDorman . - DDD incorporates the name of its builder in `Help/Show Version'. - No more `Help on Debugging' item. Sigh. DDD 1.3e -------- Bug fix release. - Some compilation trouble with older GCC versions as well as older C++ compilers fixed; thanks to Albert Chin-A-Young . - Some configuration trouble with non-GCC compilers and Motif 2.0 fixed; thanks to Larry Schwimmer . GNU Autoconf 2.7 is now used. - Functionality is unchanged; executables are identical. DDD 1.3d -------- Bug fix release. - Anonymous unions and bitfields are now processed correctly. - `Continue Until Here' (was `Set Temporary and Continue') now also stops if current stack frame is left (GDB only) - More patches for Linux ELF incorporated. Thanks to lee@tcs.com (Lee Hounshell) and jdassen@wi.leidenuniv.nl (J.H.M. Dassen) - Non-textual source files (binary characters, no newline at end) are now processed correctly. - Basic support for DEC's dbx included. DDD 1.3c -------- Bug fix release. - Patches for GCC 2.7.1 incorporated. - Patches for recent Linux boxes (using ELF format) incorporated. Thanks to lee@champion.tcs.co.jp (Lee Hounshell). - Patches for DEC Alpha OSF/1 incorporated; see the `PROBLEMS' file for special building instructions. Thanks to tuppa@iue.tuwien.ac.at (Walter Tuppa) - Configuration scripts reworked for GNU autoconf 2.6; various configuration bugs have been fixed. - New shortcuts in source popup menus: * The breakpoint popup menu allows you to set a temporary breakpoint and continue immediately. Suggested by Chris Sterritt * The source popup menu allows you to print or display dereferenced names (`print *' and `display *'). Suggested by Walter Tuppa - All DDD source code (except `ddd.C') now comes under the GNU general public *library* license. This means that the following is now allowed under certain circumstances: * Proprietary DDD extensions without supplying source code, and * Incorporating DDD code in proprietary applications See the `COPYING.LIB' file for details. DDD 1.3b -------- Bug fix release. - More minor troubles with GCC 2.7.0 on certain architectures fixed. - DDD can now be interrupted using the SIGINT signal. - In the breakpoint editor, you can now set multiple breakpoint conditions and ignore counts at a time. - The DDD WWW page has moved to `http://www.cs.tu-bs.de/softech/ddd/'. DDD 1.3a -------- Bug fix release. - Minor troubles with GCC 2.7.0 on certain architectures fixed. - New help item: DDD WWW Page. DDD 1.3 ------- This release compiles using GCC 2.7; some new features have been added and several minor bugs fixed. Some bugs remain; see the `BUGS' file for details. Changes to DDD 1.2: - You can now edit the current source via an external editor. - Display placement has been improved; new displays are now created in the current visible view, if possible. - The current execution position now stays near the middle of the visible source code. Following statements remain visible. - Diagnostics of printing commands no longer get lost. - Upon fatal errors, DDD tries to resume execution by returning to the main event loop. This leaves you a chance for exiting the debugged program properly. - New `Help on Debugging' item. Written by David A. Lyons . - Colours slightly reworked: text background is a little brighter. - A short DDD survey, including lots of screen shots, is included in `doc/ddd-paper.ps'. The paper also highlights some internal aspects of DDD. - DDD source code has been adapted to the current ANSI/ISO C++ draft standard. Any GCC release from 2.3.3 onwards, including the recent GCC 2.7.0, should now compile DDD (unjustified commpiler warnings in GCC 2.5 or lower, though). - DBX support on Solaris improved. Thanks to grant@isgtec.com (Grant McDorman) - Patches for FreeBSD incorporated. Thanks to smcarey@mailbox.syr.edu (Shawn M. Carey). - DDD-specific application defaults now override user application defaults. Thanks to ksfdo0@ksepl.shell.nl (Fred Donck). - New GNU librx 0.07.2 library included (from libg++-2.7.0), should be faster and more reliable. Thanks to all who sent in bug reports and suggestions. DDD now runs on every major UNIX flavour (with the exception of OSF/1 - any volunteers for that task?). DDD 1.2 ------- Again, a bug fix release. Many minor bugs have been fixed; see the `ChangeLog' file for details. Changes to DDD 1.1: - DDD source code should now be ANSI/ISO C++ conformant - all code specific to GCC or libg++ has been adapted. DDD now also compiles using other C++ compilers than GCC (Sun's CC 4.0 works fine; AT&T Cfront 3.0 has trouble with some inline functions). - DDD should now run correctly on SGI/IRIX machines. - Interrupting processes via the Interrupt button now works correctly on Solaris, HP-UX, and other systems. - Improved support for GDB artificial arrays. - The GDB command window has improved control character support. Tabs, Carriage returns, Backspaces and so on are processed correctly. Unprintable characters are also handled. - There is an option to suppress X warnings. This may be useful for people annoyed by tons of Motif Keysym warnings. - We have started to compile a FAQ list to reduce our daily mail load. See the file `FAQ' for details. Thanks to all who sent in bug reports and suggestions. As building DDD is still a major challenge for some users, we encourage everyone to share her/his binaries with others. See the file ftp.ips.cs.tu-bs.de:/pub/local/softech/ddd/bin/README for details. DDD 1.1 ------- Never trust a ``dot-oh'' release - DDD 1.0 had a serious bug that caused DDD to crash upon various occasions, often after a few interactions. Under certain circumstances and on many architectures, the hourglass cursor routines could corrupt the stack at a random point and thus throw a time bomb into DDD, making DDD fail at unpredictable (and unrepeatable) places. This bug has been fixed; some other minor bugs were fixed, too. See the `ChangeLog' file for details. Changes to DDD 1.0: - C++ References and VTables are fully supported. - The source popup menu no longer changes the source selection. DDD 1.0a -------- Bug fix release. On many architectures, this DDD release should be much more robust. For unknown reasons, DDD 1.0 choked soon after destroying some of its widgets - a bug that must have been introduced at the very end of the beta test phase and thus have gone by unnoticed. This bug, and some other minor bugs, have been fixed. DDD 1.0 ------- First public DDD release. Many thanks to all who spent their time in testing DDD, sending bug reports and suggestions, and making DDD what it is today. This DDD release should configure, compile and run out-of-the-box on the following systems: hppa1.1-hp-hpux9.05 linux-i386-unknown linux-i486-unknown mips-dec-ultrix4 powerpc-ibm-aix3 rs6000-ibm-aix3 sparc-sun-sunos4 sparc-sun-solaris2 If your system is in the list above, please let us know if you encountered any problems (unless these are known problems listed in the `BUGS' and `PROBLEMS' files). If your system is not in the list above, please let us share your experiences. Changes to DDD 0.9: - Several last-minute bugs have been fixed. - New `Program' menu, introduces keyboard accelerators for frequently used commands. - Graph printing reworked; you can now set paper size and graph orientation. The bounding box is computed correctly for all sizes. - The `Graph' menu has been dropped; its items have been moved into the `Data' and `File' menus. - Selecting and moving multiple displays made easier. - Pointers to functions are now displayed correctly. - Regex name conflicts on Linux fixed. Announce policy for future releases: - Bug fix releases shall be named 1.0a, 1.0b, and so on. In general, they will be announced in DDD mailing lists only. - Feature releases shall be numbered 1.1, 1.2, 1.3 and so on. They will be announced in USENET news as well. $Id: ReleaseNotes,v 1.1.1.1 1997/11/12 22:33:48 mengel Exp $