aboutsummaryrefslogtreecommitdiff
path: root/gdb/buildsym.c
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1993-10-18 15:40:04 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1993-10-18 15:40:04 +0000
commitf91b837dd00664aadf398ce2fe67a698cdfad960 (patch)
tree7cc4eaee7dc451bfe4b50cf748e539cfd38bbee0 /gdb/buildsym.c
parentf843c95fc3d55bb449ed9e681848808c9f637ee4 (diff)
downloadgdb-f91b837dd00664aadf398ce2fe67a698cdfad960.zip
gdb-f91b837dd00664aadf398ce2fe67a698cdfad960.tar.gz
gdb-f91b837dd00664aadf398ce2fe67a698cdfad960.tar.bz2
* buildsym.c (finish_block): If we pop the context stack and it is
not empty, complain () instead of abort ().
Diffstat (limited to 'gdb/buildsym.c')
-rw-r--r--gdb/buildsym.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gdb/buildsym.c b/gdb/buildsym.c
index 256d2ce..dfa9be1 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;
}
}