From 9d271503e81a1d0c4c3514ae3a7dbd57c27bafbd Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Fri, 12 Nov 1993 22:30:05 +0000 Subject: [PATCH] * partial-stab.h: Ignore ':' symbol descriptors. Same case as Kung's stabsread.c change. --- gdb/ChangeLog | 5 +++++ gdb/partial-stab.h | 24 +++++++++++++++++++----- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e3057735b35..9c61ca24916 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +Fri Nov 12 16:22:39 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * partial-stab.h: Ignore ':' symbol descriptors. Same case as + Kung's stabsread.c change. + Fri Nov 12 11:18:02 1993 Kung Hsu (kung@cirdan.cygnus.com) * stabsread.c (patch_block_stabs, define_symbol, read_type): in diff --git a/gdb/partial-stab.h b/gdb/partial-stab.h index bfefbcc665c..30942351b68 100644 --- a/gdb/partial-stab.h +++ b/gdb/partial-stab.h @@ -551,14 +551,28 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ case '9': continue; - default: - /* Unexpected symbol. Ignore it; perhaps it is an extension - that we don't know about. - - Someone says sun cc puts out symbols like + case ':': + /* It is a C++ nested symbol. We don't need to record it + (I don't think); if we try to look up foo::bar::baz, + then symbols for the symtab containing foo should get + read in, I think. */ + /* Someone says sun cc puts out symbols like /foo/baz/maclib::/usr/local/bin/maclib, which would get here with a symbol type of ':'. */ + continue; + + default: + /* Unexpected symbol descriptor. The second and subsequent stabs + of a continued stab can show up here. The question is + whether they ever can mimic a normal stab--it would be + nice if not, since we certainly don't want to spend the + time searching to the end of every string looking for + a backslash. */ + complain (&unknown_symchar_complaint, p[1]); + + /* Ignore it; perhaps it is an extension that we don't + know about. */ continue; } -- 2.30.2