* partial-stab.h: Ignore ':' symbol descriptors. Same case as
authorJim Kingdon <jkingdon@engr.sgi.com>
Fri, 12 Nov 1993 22:30:05 +0000 (22:30 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Fri, 12 Nov 1993 22:30:05 +0000 (22:30 +0000)
Kung's stabsread.c change.

gdb/ChangeLog
gdb/partial-stab.h

index e3057735b3506016260e995dc3dfe23aac8692ec..9c61ca24916e5563d2b4b4cb2d8fbc27c644aab1 100644 (file)
@@ -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
index bfefbcc665ce6ae062541350635ac13fa29aa170..30942351b687fb43deaa7206698c4afde63fad2b 100644 (file)
@@ -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;
            }
 
This page took 0.036695 seconds and 4 git commands to generate.