summaryrefslogtreecommitdiff
path: root/gdb/buildsym.c
diff options
context:
space:
mode:
authorKlee Dienes <kdienes@apple.com>2002-11-18 19:14:10 +0000
committerKlee Dienes <kdienes@apple.com>2002-11-18 19:14:10 +0000
commit60ffc12c2259eb8ab80321121aaddbff84e8f1a9 (patch)
tree1ad8242f1246b97260640016e25a7323c575bd8a /gdb/buildsym.c
parent9283744f2c87cf567ed3e9c4253f69d9ab82f17b (diff)
downloadgdb-60ffc12c2259eb8ab80321121aaddbff84e8f1a9.tar.gz
2002-11-18 Klee Dienes <kdienes@apple.com>
* buildsym.h (pop_context): Convert to function, defined in buildsym.c. * buildsym.c: Include gdb_assert.h. (pop_context): Implement as C function. Add check for stack underflow. * dbxread.c (process_one_symbol): Complain and stop processing that symbol if we are already at the top of the context stack for a function-end N_FUN (this would imply an umatched RBRAC). Ditto when processing N_RBRAC.
Diffstat (limited to 'gdb/buildsym.c')
-rw-r--r--gdb/buildsym.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gdb/buildsym.c b/gdb/buildsym.c
index 09e81228aea..ae8929d2b6d 100644
--- a/gdb/buildsym.c
+++ b/gdb/buildsym.c
@@ -33,6 +33,7 @@
#include "symfile.h"
#include "objfiles.h"
#include "gdbtypes.h"
+#include "gdb_assert.h"
#include "complaints.h"
#include "gdb_string.h"
#include "expression.h" /* For "enum exp_opcode" used by... */
@@ -1100,6 +1101,14 @@ push_context (int desc, CORE_ADDR valu)
return new;
}
+
+struct context_stack *
+pop_context (void)
+{
+ gdb_assert (context_stack_depth > 0);
+ return (&context_stack[--context_stack_depth]);
+}
+
/* Compute a small integer hash code for the given name. */