delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/08/11/11:44:36

Date: Mon, 9 Aug 1999 11:12:52 +0300 (IDT)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: "S. M. Halloran" <mitch AT duzen DOT com DOT tr>
cc: djgpp AT delorie DOT com, Robert Hoehne <robert DOT hoehne AT gmx DOT net>
Subject: Re: ANNOUNCE: GDB 4.18 for DJGPP
In-Reply-To: <199908051104.OAA23633@ankara.Foo.COM>
Message-ID: <Pine.SUN.3.91.990809111213.19120B-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Thu, 5 Aug 1999, S. M. Halloran wrote:

> Is it possible to list at least the highlights of what changes have
> taken place?

Changes as compared to what?  The previous GDB port was of version
4.16, which was a lot of time ago.  A lot of water went under the
GDB's bridge during this time, and it is obviously meaningless to try
to compare those two versions, since the official GNU GDB distribution
has also changed a lot.  It is impossible to describe all of the
changes; see the file gdb/NEWS in the distribution for the major
changes that the GDB developers regarded as important enough to be
mentioned.

Below is my humble attempt to list some of the new features and
bugfixes that should be important to DJGPP users.  Caveat emptor: this
list is not meant to be complete (did I already say it's impossible?),
so don't blame me if you find an important feature I missed.  If you
really want to find out the new exciting features, I suggest a nice,
long session reading the manual and typing the various "help"
commands, right after you unzip the distribution.

Please also don't take what's below as an indication that I made it
all happen!  Robert Hoehne did most of the hard work of porting GDB,
with lots of help from Pierre Muller and Andris Pavenis who improved
the DJGPP debug support so as to make various GDB features work.

I simply decided to augment Robert's announcement, since I did study
this version of GDB and even made a few small changes (all of them
incorporated in this release).  I hope Robert won't mind my small
intervention ;-)

So, here's the list of some of the important news about this port:

 * Full support for debugging floating-point programs.  You can now
   see all the FP registers in both raw and FP format.  Try the
   command "info float".

 * Watchpoints (a.k.a. data breakpoints) now work much better.  You
   should be able to set data-write breakpoints which will trigger
   when some code overwrites a variable.  Some bugs are impossible to
   find without this feature.

 * Support for debugging programs that use signals.  You can now catch
   signals that happened in the debuggee, decide whether you want the
   debuggee to see that signal, deliver signals that didn't really
   happen, etc.  You can also interrupt the debuggee with Ctrl-C, set
   some breakpoints or examine variables, then continue the debuggee
   from the same spot where it was interrupted.  (Previously, when a
   signal happened while the debuggee ran, it would kill the debuggee,
   and you couldn't continue debugging it anymore.)

 * You can now debug programs that hook hardware interrupts, like
   keyboard, timer, etc.

 * Support for debugging programs that redirect their standard
   handles, or switch them into binary mode.  You can now actually say
   something like "run < foo > bar" and have this work like you'd
   expect.  (Previously, redirection from the "run" command was not
   supported, and if the debuggee happened to redirect its stdout,
   you won't see GDB's output anymore.)  "Info terminal" will print
   useful information about debuggee's terminal, including raw/cooked
   mode and its redirection, if any.

 * GDB now uses the termios functions for console I/O.  This means
   that you can debug graphics programs directly (provided that the
   graphics mode is supported by the video BIOS), and apart of some
   awkwardness, since GDB's output and the graphics are all mixed up,
   you can still see GDB's output.  Signals are enabled in GDB's own
   code, so you can interrupt GDB with Ctrl-C if you want.

 * Lots of bugs with DOS-style file names and DOS text files were
   found and fixed.  Previously, many file-related commands would fail
   if presented with file names that include drive letters etc.,
   especially in commands like "cd" and in source file names.

 * Support for debugging programs that change their working
   directory.  GDB now switches between its own directory and the
   directory where the debuggee chdir'ed as appropriate, to create an
   illusion of two independent processes.

 * You can rerun the debuggee any number of times, without restarting
   the debugger.


Well, are you convinced yet that this is a significant improvement? ;-)

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019