emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs mode for GDB


From: Nick Roberts
Subject: Re: Emacs mode for GDB
Date: Tue, 21 May 2002 13:32:31 +0100

Miles Bader writes:
 > 
 > (1) I get the following error regularly:
 > 
 >  error in process filter: gdb-output-burst: Symbol's function definition  
 >  is void: gdb-display-end
 >  error in process filter: Symbol's function definition is void: 
 >  gdb-display-end
 > 
 >  Indeed there seems to be no such function `gdb-display-end'.
 
Thats right there is currently no gdb-display-end (or gdb-display-begin). 
Examining data (array slices, diving into structures) is on of the things
that I want to do next.  Currently if you comment out the two items :

   ("display-begin" gdb-display-begin)
   ("display-end" gdb-display-end)
 
in the variable gdb-annotation-rules the error above should go away and any
variables or expressions that you display should just appear in the GUD buffer
(or possibly the Input/Output buffer!).

 > (2) Completion doesn't work on the gdb command line like it does in
 >     the standard gdb-mode.

Hmm. No, gdba.el doesn't seem to have it either. I must have lost it in the 
merge. I'll try to put it back.

 > (3) The file `gdb.el' is apparently constructed in large parts from the
 >     existing `gud.el', with much of the functionality of gud removed (in
 >     particular, support for non-gdb debuggers).  Is that necessary?

Its just a starting point to help me get something working. At the beginning
I wasn't very familiar with gud.el as lisp code and I hadn't even heard of 
gdba.el

 >     If emacs were to use your gdb.el unchanged, it would result in a
 >     huge amount of duplicated code between gdb.el and gud.el; it would
 >     be nicer to either continue to use gud.el, with new features added,
 >     or otherwise avoid code duplication.
 
I guess it could either be folded back into gud.el or gdb.el could have the line
`(require 'gud)' in it and the autoloading of the main lisp function gdb could
be suppressed in gud.el. There may be some conflicts in namespace which could
possibly be resolved by changing the prefix gud- to gdb- for some functions
and variables.

 > (4) With all the windows displayed, it requires a lot of space.  It
 >     would be nice to have some way of specifying which windows get
 >     used -- for instance, the breakpoint window can be displayed only
 >     if there are breakpoints, and when tested it, I didn't need the
 >     backtrace, or I/O windows either, so I'd like to be able to disable
 >     them.

 There is a variable called gdb-many-windows which if set to nil will suppress
 the display of the ancillary buffers.  However, you need the breakpoints
 buffer for proper display of the breakpoint icons as they are updated by the
 relevant annotation from gdb. Incidentally, the toolbar could be inserted
 directly in gud.el (I think) without much alteration.

 > (5) You should keep the historical author information in the file header
 >     comment.

The code is in a state of turmoil at the moment. Some author information for
gud.el is included a short way down. However, it doesn't say in gdba.el who
the authors were. When the code is complete, I will try to deal with this matter
properly.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]