From 28d14fd8783e109293c7000a006a8ad08f2cd736 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Fri, 9 Jul 1993 18:40:26 +0000 Subject: [PATCH] * mipsread.c (cross_ref): Set the name to unknown for "struct *" case. Patch from ptf@delcam.co.uk (Paul Flinders). --- gdb/ChangeLog | 3 +++ gdb/mipsread.c | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8b42909f99..1c5163da43 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ Fri Jul 9 12:36:46 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + * mipsread.c (cross_ref): Set the name to unknown for "struct *" case. + Patch from ptf@delcam.co.uk (Paul Flinders). + * a29k-tdep.c, findvar.c (get_saved_register): Fix byteswapping sins. Fri Jul 9 09:47:02 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) diff --git a/gdb/mipsread.c b/gdb/mipsread.c index 60904ecabc..22f093c5ad 100644 --- a/gdb/mipsread.c +++ b/gdb/mipsread.c @@ -2753,6 +2753,13 @@ cross_ref (ax, tpp, type_code, pname, bigend) /* Careful, we might be looking at .o files */ if (sh.iss == 0) *pname = ""; + else if (rn->rfd == 0xfff && rn->index == 0) + /* For structs, unions and enums, rn->rfd is 0xfff and the index + is a relative symbol number for the type, but an index of 0 + seems to mean that we don't know. This is said to fix a problem + with "info func opendir" on an SGI showing + "struct BSDopendir.c *BSDopendir();". */ + *pname = ""; else *pname = ecoff_data (cur_bfd)->ss + fh->issBase + sh.iss; -- 2.34.1