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