From f91b837dd00664aadf398ce2fe67a698cdfad960 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Mon, 18 Oct 1993 15:40:04 +0000 Subject: [PATCH] * buildsym.c (finish_block): If we pop the context stack and it is not empty, complain () instead of abort (). --- gdb/ChangeLog | 16 ++++++++++++++++ gdb/buildsym.c | 11 ++++++++--- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4933a765a2..c982c91b3d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,19 @@ +Mon Oct 18 10:28:08 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * buildsym.c (finish_block): If we pop the context stack and it is + not empty, complain () instead of abort (). + +Sun Oct 17 19:42:31 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * parse.c, parser-defs.h (follow_types): New function. + * c-exp.y (ptype : typebase abs_decl): Use it. + * c-exp.y (ptype): Add support for type qualifiers after the + typebase. The typebase rule already has support for them before + the typebase. + * Makefile.in: Change the expected number of shift/reduce + conflicts to 6. This is OK--the 2 new conflicts are basically the + same as one of the old ones. + Sun Oct 17 13:04:49 1993 Fred Fish (fnf@cygnus.com) * Makefile.in (VERSION): Bump to 4.10.3. diff --git a/gdb/buildsym.c b/gdb/buildsym.c index 256d2cecb3..dfa9be1316 100644 --- a/gdb/buildsym.c +++ b/gdb/buildsym.c @@ -667,11 +667,16 @@ end_symtab (end_addr, sort_pending, sort_linevec, objfile, section) finish_block (cstk->name, &local_symbols, cstk->old_blocks, cstk->start_addr, end_addr, objfile); - /* Debug: if context stack still has something in it, - we are in trouble. */ if (context_stack_depth > 0) { - abort (); + /* This is said to happen with SCO. The old coffread.c code + simply emptied the context stack, so we do the same. FIXME: + Find out why it is happening. This is not believed to happen + in most cases (even for coffread.c); it used to be an abort(). */ + static struct complaint msg = + {"Context stack not empty in end_symtab", 0, 0}; + complain (&msg); + context_stack_depth = 0; } }