[gnu.gdb.bug] A bug fix!

bryan@UUNET.UU.NET (Bryan Boreham) (07/14/89)

This appears to fix the core-dumping problem I mentioned earlier:

diff -c dbxread.c.orig dbxread.c
*** dbxread.c.orig      Sun Apr  9 13:41:31 1989
--- dbxread.c   Thu Jul 13 20:28:09 1989
***************
*** 3565,3571 ****
         has not yet been seen.  In this case, we skip to the comma,
         which will mark the end of the base class name.  (The ':'
         at the end of the base class name will be skipped as well.)  */
!       *pp = (char *) index (*pp, ',');
        /* Just allocate the type and leave it zero if nothing known */
        return dbx_alloc_type (typenums);

--- 3565,3581 ----
         has not yet been seen.  In this case, we skip to the comma,
         which will mark the end of the base class name.  (The ':'
         at the end of the base class name will be skipped as well.)  */
!
! /* Change by Bryan Boreham, Kewill, Thu Jul 13 20:09:44 1989.
!
!    This is wrong, as it can set *pp to zero if there is no comma,
! which occurs if the compiler didn't know what the type is. It seems
! safe to check for the colon instead, although I can't be certain this
! won't break other things.
!
! Was:  *pp = (char *) index (*pp, ',');                  */
!       *pp = (char *) index (*pp, ':') + 1;
!
        /* Just allocate the type and leave it zero if nothing known */
        return dbx_alloc_type (typenums);

Please mail me if this is wrong; I don't know anything about the
internals of gdb, or the way dbx information should look.

Bryan Boreham			bryan@kewill.uucp  
Software Engineer	||	bryan%kewill@uunet.uu.net
Kewill Systems PLC	||  ... uunet!mcvax!ukc!root44!kewill!bryan
Walton-On-Thames	
Surrey, England		Telephone: (+44) 932 248 328