# $Id: BUGS,v 1.156 1997/05/13 15:08:10 zeller Exp $ -*- Text -*-
# The DDD bug list.

Note: For problems occurring when *building* DDD, see the file `PROBLEMS'.

This is a list of known DDD bugs, which should be fixed in some future
DDD release.  If you want to fix one or more of these bugs, please ask
us (at ddd@ips.cs.tu-bs.de) whether there are already people working
on that bug.  Similar, if you find a bug, be sure to report it to us
(at ddd-bugs@ips.cs.tu-bs.de) such that we may fix it (or include it
in this list :-)

Bugs marked with an `*' represent work in progress.
Volunteers for fixing these and other bugs are welcome!

001. It's too big and too slow.  [This one will never get fixed]

003. Using Motif 1.1 or earlier, the command window is scrolled
     whenever obscured.  [This seems to be a Motif bug.]

013. Raising windows using the `Windows' menu does not assign them `mwm'
     input focus.  [Anyone willing to give me a hint here?  -AZ]

015. On Motif 1.2 or later, using DDD with both explicit keyboard
     focus and a panned graph editor causes problems: Keyboard
     traversal of the graph editor does not work; on
     mips-dec-ultrix4.4 (and others?), pointer selection of an
     arbitrary display causes DDD to crash.  [It seems that it is
     generally not wise to combine explicit keyboard focus and panned
     data displays, since this means involving Athena widgets in Motif
     keyboard traversal.  A simple workaround: If you want panners,
     don't use explicit keyboard focus; if you want explicit keyboard
     focus, use scrollbars.]

021. Using DBX, attempting to dereference a `(nil)' pointer results in
     an error message and no new display.  However, the expression is
     entered as an ordinary display.

026. Using DBX with PASCAL or Modula-2, selected array elements are
     always counted from zero, instead of the starting index of the array.

037. Paul Eggert (eggert@twinsun.com) states:

     The first time I ran ddd, my X server dumped core!  Ack!

     Here are the details.  I was running on `shade', a SunOS 4.1.4
     sparc, using the old X News server.  ddd was running on a Solaris
     2.4 host, with the DISPLAY='shade:0'.

     I managed to narrow it down to the following.  Use the .Xdefaults
     at the end of this message.  This should be the only file in your
     home directory.  Log in to a SunOS 4.1.x (x = 3 or 4) host ONE.
     Type `/usr/openwin/bin/openwin' to start up Open Windows.  Click
     in the command tool, and type `rlogin TWO' where TWO is a Solaris
     2.4 host.  Then type `setenv DISPLAY ONE:0' (where ONE is the
     SunOS 4.1.x host).  Then run `ddd'.  This will make the SunOS
     4.1.x X server dump core.

040. dmitzel@everest.hitc.com (Danny J. Mitzel) states:
     I'm running the DDD 1.1 sparc-sun-sunos4.1.1 prebuilt binary on a
     Sun4/300 SunOS4.1.3_U1.  I notice that once I have typed any
     commands in the 'DDD Command Window' and then bring up the
     'Command History' list that there is always an extra entry at the
     bottom of the list, usually it's blank sometimes there's garbage.
     anyways, selecting that entry leads to 'Internal error
     (Segmentation fault).'  no core dump.  I've attached the
     '--configuration' and '--check-configuration' report.  let me
     know if you need any other info.
     [A bug in Motif 1.1 - does not occur in later Motif versions].

041. Starting a multi-window DDD iconified under vtwm and fvwm causes
     trouble with group iconification.

043. vickery@babbage.cs.qc.edu (Christopher Vickery) states:
     The display() operation generates a segmentation fault if the variable
     to be displayed is an uninitialized pointer.
     [I could not reproduce this bug.  Can anyone clarify this?  -AZ]

049. The bounding box is computed for all boxes, even if only selected
     boxes are to be printed.

050. jcrupi@mystech.com (John Crupi) states: 
     When trying to dereference (using the mouse) a very large
     structure, ddd locks up.  It usually happens if I quickly select
     'dereference' after I display the pointer.  The structure contains
     unions.  Machine is sparc-sun-solaris2.4.

051. grant@isgtec.com (Grant McDorman) has run purify on DDD and
     reported some memory leaks as well as bad memory accesses.

056. `Select All' does not select hints.

060. Frank Dohrmann <frank@kaa.desy.de> says that on his Sun-Sparc
     10/41 with SunOS 4.1.3, using `lpr' instead of `lp -c' to print
     the graph hangs up DDD.

062. Seth J. Bradley <sbradley@scic.intel.com> says that DDD only
     displays the upper 32 bits of "unsigned long long" data.
     Xxgdb, mxgdb and xde all display the full 64 bits of this data
     type.

077. oyvind@stavanger.Geco-Prakla.slb.com (Oyvind Yrke) says that DDD
     crashes after receiving too much data from GDB (e.g. `info
     functions').

079. Window resize problems.  louie@dbmx.com (Lewis Alderton) says: I
     am running using FVWM (virtual window manager) and when the
     breakpoints and stack-frame windows pop up, they appear as the
     width of the virtual screen, which is twice as wide as the actual
     screen.

     With the stackframe window I can resize the frame and it is OK,
     but with the breakpoints window, resize causes the window to
     redraw is such a manner as to hide all the breakpoints, once this
     has happened, I can never see breakpoints in this window again.

085. Lassi A. Tuura <Lassi.Tuura@cern.ch> states:

     - There is a bug somewhere in graph layout code that manifests
       only on highest KCC optimization levels (+K2 and +K3).  The
       result is that if I dereference any pointer, the following
       happens:
         - the arrow is drawn to extreme left, beyond the left edge
         - the panner window becomes very wide and the current view
           is just a thin line in the panner
         - moving the panner handle has no effect -- no scrolling is
           ever done; thus I cannot make the target of the pointer
           visible
       This is very repeatable, as it happens every time.  DDD does
       not crash, however.  My first guess is that somehow something
       goes either negative or to extremely large positive value.  I
       could try to narrow down the location of the bug if someone
       would be nice enough to tell me which functions to look at.
     [This is a bug in KCC.  Don't know how to fix this  -AZ]

086. mayer@paradigml.com (Ron Mayer) says:

     In a number of structures I would attempt to "Modify [the]
     dependent display expression" to display in hex using expressions
     like "/x g->head", instead of the default "(g)->head".

     Occasionally this would make ddd hang, and lock up the X-server
     completely so that I would have to rlogin from another terminal
     to kill the program.  The bus-error was not reproducable, and
     unfortunatelly I had core files disabled when it happened.

     These structures did happen to be in a mmap()'d region of shared
     memory, but since I didn't see the problems when I didn't use the
     "/x" modifier I suspect this isn't the problem.

     PS: What is the prefered way (if any) of making the hex output 
         the default in the display graph?  If I "set output-radix 16" 
         in the gdb window ddd seems to lock up very often.

107. Jonathan Edwards <edwards@blight.IntraNet.com> says that DDD/DBX
     hangs up on his powerpc-ibm-aix4.2.0.0 box after a few `step's.
     [I could not reproduce this bug on a rs6000-ibm-aix4.1.4.0.
      Does this also happen on other configurations?  -AZ]

108. Satish Chandra <am939@gobhp1.fs.cummins.com> says that on his
     alpha-dec-osf3.2, sometimes ddd/gdb seems to hang for no
     apprarent reason and needs to be killed.

109. Satish Chandra <am939@gobhp1.fs.cummins.com> says
     (alpha-dec-osf3.2, make check): After setting up several
     breakpoints, I clicked on Run.  The debugger stopped at the first
     breakpoint; however the arrow didn't show up.  Upon continuation,
     the arrow showed up.  Minor cosmetic bug.

113. Matthias Kurz <mk@baerlap.north.de> states:
     If I resize the data display the background doesn't get
     refreshed.  [Use an Athena Panner instead of Motif scrollbars  -AZ]

114. Avi Cohen Stuart <avi@baan.nl> noticed that "a lot of texts on
     several windows are redisplayed more that two times, for example
     texts in the source window, and the graphics window.  Is the
     frequent redisplay a 'feature' or is it something that needs to
     be fixed? N.B. for Motif1.2 there exists something like
     XmText{Disable|Enable}Display (or something like this...) that
     allows to do updates without immediate redisplay."
     [You won't believe it, but the DDD developers still use Motif 1.1.  -AZ]

117. Under Linux slackware 3.1, the file permissions in `/dev/ptyp?' do not
     allow for DDD <-> GDB interaction.  Can we circumvent this within DDD?

118. SGI CC compiles DDD, but the resulting executable soon dies with a
     segmentation fault.  [Use GCC instead.  -AZ]

122. Torsten Metzner <tom@plato.uni-paderborn.de> says: On
     my sparc-sun-solaris2.5.1, have DDD run with `--exec-window' in
     the background.  Starting the execution TTY causes DDD to stop
     with `Suspended (tty output)'.

123. David Bianchi <bianchi@pllb.inet.it> states: Using DDD 2.0 on
     hppa1.1-hp-hpux9.07, a SIGSEGV appears whenever we choose the
     menu item "Open Program..." as well as "Open Core Dump..." from
     the menu bar.

124. Aleksandar Matijaca <aleksm@tuna.dztech.com> reports that at one
     machine (Sparc 20 Solaris 2.5) at work I can press the right
     mouse button, and get a small pop-up menu to appear so that one
     can set breakpoints etc., however on the one at home I can't do
     that.

126. Flashing data window.  Thomas Liefke
     <liefke@cdc.Informatik.TH-Darmstadt.DE> says: 

     The data window is flashing forever in certain circumstances. The
     flashing looks like a rapid, endless update of the data
     displayed. The flashing only occurs when the panner is
     used. While the window (i.e. the boxes and the panner) is
     flashing, another panner is occurring in the upper left corner in
     each flash-cycle.

     The flashing does NOT occur when the scroll bar is used instead of a
     panner.

     How I can reproduce the bug:

     ddd ctest

     now I press:

     break at()
     run
     step
     click on variable 'tree' and select 'display'
     click on box 'tree' and select 'display*'
     click on 'data = {...}' and select 'show detail'

     make the data window smaller so that the lower box doesn't fit
     completely into window

     make the data window big enough for all three boxes.

     Then the window is flashing forever unless I make the window
     smaller and then bigger again.

     When I repeatedly change the size, the flashing comes again but
     not each time the window size is big enough to hold all boxes.

     This flashing occurs in the vsl demos as well.

     For example:

     cd ddd-2.0/vsllib
     ../ddd/vsl DEMOS/arcs

     Now the window is flashing until I increase the size of the
     window so that everything fits into it. The flashing doesn't
     occur again when I decrease the window size to the original size.

     The flashing occurs in other demos as well. It doesn't occur in
     DEMOS/bigflow.

     I experienced the flashing neither in version 1.4 nor in version
     2.0beta.

127. Bob Vickers <bobv@dcs.rhbnc.ac.uk> says that DDD 2.0
     (alpha-dec-osf3.2) sometimes fails to start.  Often it works
     fine. But sometimes, especially if you haven't run it for a while
     (e.g. first thing in the morning) the command window comes up but
     there is no sign of the source window. There are sometimes error
     messages, and these vary slightly.

     The parent Unix window sometimes contains tty error messages, e.g.

     platon$ make check
     ==> Making check in ./ddd...
     make[1]: Entering directory `/nobackup/work/bobv/ddd-2.0/ddd'
     XUSERFILESEARCHPATH=. XAPPLRESDIR=. ./ddd cxxtest
     X Toolkit Warning: Cannot convert string 
     "-*-Menu-Medium-R-Normal--*-120-*-*-P-*-ISO8859-1" to type FontStruct
     (gdb) cannot set terminal foreground process group: I/O error
     (gdb) cannot get slave terminal settings: I/O error

     [We cannot fix this, as we neither have an OSF box nor
      appropriate OSF documentation at our disposition.  The DDD
      distribution comes with a demo program `ttytest' which is useful
      for debugging the TTY interface in `TTYAgent.C'  -AZ]

131. `Find<<' and `Find>>' should be in the `Edit' menu (at least for
     sources)

134. David M. Karr <dkarr@nmo.gtegsc.com> wrote: It seems to me that
     when the executable is reloaded, it should force a reload of the
     source.  I don't see much use in running an executable with the
     old version of a source file.  [Is this still a problem?  -AZ]

136. If a DBX `where' output in the console window contains a line
     like ["test_dxdb.f":49], it is omitted from the listing.
     Reported by Clemmitt Sigler <siglercm@alphamb.phys.vt.edu>.

139. With Solaris 2.5.1, DDD recurses endlessly in glob_filename().
     Reported by Deepak Mulchandani <dmm@jurassic.eng.sun.com>
     [Can anyone reproduce this?  -AZ]

144. Warren Nagourney <warren@dirac.phys.washington.edu> says: When I
     push on the upper or lower scrolling arrow in the source window,
     occasionally the scrolling will go out of control and scroll all
     the way to the top or bottom of the window before it scrolls to
     the desired place.

150. In Modula-2-mode, DDD displays are named `^tree' instead of
     `tree^'.  [This is a GDB bug.  Here's a patch for GDB 4.16:

     ===========================================================
     *** m2-lang.c.orig	Mon Feb 24 17:24:47 1997
     --- m2-lang.c	Mon Feb 24 17:24:58 1997
     ***************
     *** 377,381 ****
           {">",   BINOP_GTR, PREC_ORDER, 0},
           {"<",   BINOP_LESS, PREC_ORDER, 0},
     !     {"^",   UNOP_IND, PREC_PREFIX, 0},
           {"@",   BINOP_REPEAT, PREC_REPEAT, 0},
           {"CAP", UNOP_CAP, PREC_BUILTIN_FUNCTION, 0},
     --- 377,381 ----
           {">",   BINOP_GTR, PREC_ORDER, 0},
           {"<",   BINOP_LESS, PREC_ORDER, 0},
     !     {"^",   UNOP_IND, PREC_SUFFIX, 1},
           {"@",   BINOP_REPEAT, PREC_REPEAT, 0},
           {"CAP", UNOP_CAP, PREC_BUILTIN_FUNCTION, 0},
     ===========================================================

152. Curved edges cannot (yet) be printed.

153. Jonathan Edwards <edwards@intranet.com> says that in AIX DBX,
     the local variable display does not display function arguments.

155. DBX `dump` output is not understood if local arrays are shown.
     (DBX prints these as `ARRAY')

159. Jonathan Edwards <edwards@intranet.com> says:
     A status display only shows once. After stepping the program it
     collapses into just the title.  Doing a refresh command restores
     the display.
     [This is due to using AIX xlC instead of GCC.  Further
     investigation is required.  -AZ]

165. The data display `list_test @ 10' is not correctly parsed.

166. When disassembling, have a way to place a delay that is
     automatically cleared with the next GDB prompt (AutoDelay or so).

168. Jens Albrecht <Jens.Albrecht@informatik.uni-erlangen.de>
     complains that using DBX, the `file' command does not change the
     source file.

169. The Manual Browser does not recognize manual (sub-)titles for
     ULTRIX and HP-UX `man' formats (probably problems with others,
     too)

172. Jonathan Edwards <edwards@intranet.com> says: If I interrupt my
     program while it is running, my data displays are not updated,
     and instead I get the info in the debugger console.

173. Matthias Kurz <mk@baerlap.north.de> says:
     - Problems with the gdb 'until' commands. If another breakpoint
       is hitten before the specified line, the requested halt is
       forgotten.  tbreak works always as intended. Suggestion: use
       always tbreak.
     - Often the first graph display is not completely inside the
       window; after selecting 'layout graph' things are right
     - The debugger console often looses the text cursor; typing
       commands is still possible; 'clear window' brings the cursor
       back.

174. Command tool placement problems.  Graham Gough
     <graham@cs.man.ac.uk> states: I'm running fvwm2 with a 2x2
     virtual screen arrangement. If I start xddd in the top left
     screen, the command pad always appears in the bottom left screen
     (in the top right corner). 2.0 doesn't give this behaviour: the
     command pad pops up in the screen on which I start it.

175. (Insert your bug here)
