* dwarf2read.c (read_func_scope): Restore list_in_scope properly

when we finish a function a context.
* buildsym.h (outermost_context_p): New macro.
(Bug analyzed by David Edelsohn.)
This commit is contained in:
Jim Blandy 2002-11-08 20:05:10 +00:00
parent 9c1412c1a1
commit 921e78cf01
3 changed files with 14 additions and 1 deletions

View file

@ -1,3 +1,10 @@
2002-11-08 Jim Blandy <jimb@redhat.com>
* dwarf2read.c (read_func_scope): Restore list_in_scope properly
when we finish a function a context.
* buildsym.h (outermost_context_p): New macro.
(Bug analyzed by David Edelsohn.)
2002-11-08 Andrew Cagney <ac131313@redhat.com>
* blockframe.c: Include "dummy-frame.h".

View file

@ -179,6 +179,9 @@ EXTERN int context_stack_size;
#define pop_context() (&context_stack[--context_stack_depth]);
/* Non-zero if the context stack is empty. */
#define outermost_context_p() (context_stack_depth == 0)
/* Nonzero if within a function (so symbols should be local, if
nothing says specifically). */

View file

@ -2021,7 +2021,10 @@ read_func_scope (struct die_info *die, struct objfile *objfile,
local_symbols = new->locals;
param_symbols = new->params;
list_in_scope = &file_symbols;
/* If we've finished processing a top-level function, subsequent
symbols go in the file symbol list. */
if (outermost_context_p ())
list_in_scope = &file_symbols;
}
/* Process all the DIES contained within a lexical block scope. Start