2002-04-09 Daniel Jacobowitz <drow@mvista.com>

* symtab.h (ALL_BLOCK_SYMBOLS): Don't dereference the pointer
        after the last symbol in a block.
This commit is contained in:
Daniel Jacobowitz 2002-04-09 20:51:33 +00:00
parent 2d1676a068
commit 97658e92df
2 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2002-04-09 Daniel Jacobowitz <drow@mvista.com>
* symtab.h (ALL_BLOCK_SYMBOLS): Don't dereference the pointer
after the last symbol in a block.
2002-04-09 Pierre Muller <muller@ics.u-strasbg.fr>
* p-exp.y (yylex): Handle also the fact that is_a_field_of_this

View File

@ -407,11 +407,15 @@ struct block
/* Macro to loop through all symbols in a block BL.
i counts which symbol we are looking at, and sym points to the current
symbol. */
symbol.
The contortion at the end is to avoid reading past the last valid
BLOCK_SYM. */
#define ALL_BLOCK_SYMBOLS(bl, i, sym) \
for ((i) = 0, (sym) = BLOCK_SYM ((bl), (i)); \
(i) < BLOCK_NSYMS ((bl)); \
++(i), (sym) = BLOCK_SYM ((bl), (i)))
++(i), (sym) = ((i) < BLOCK_NSYMS ((bl))) \
? BLOCK_SYM ((bl), (i)) \
: NULL)
/* Nonzero if symbols of block BL should be sorted alphabetically.
Don't sort a block which corresponds to a function. If we did the