-Wed Aug 20 14:57:11 1997 Michael Meissner <meissner@cygnus.com>
+Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
+
+ * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
+ block_stack before dereferencing it.
+
+Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
* rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
void
start_cleanup_deferal ()
{
- ++block_stack->data.block.conditional_code;
+ /* block_stack can be NULL if we are inside the parameter list. It is
+ OK to do nothing, because cleanups aren't possible here. */
+ if (block_stack)
+ ++block_stack->data.block.conditional_code;
}
/* Mark the end of a conditional region of code. Because cleanup
void
end_cleanup_deferal ()
{
- --block_stack->data.block.conditional_code;
+ /* block_stack can be NULL if we are inside the parameter list. It is
+ OK to do nothing, because cleanups aren't possible here. */
+ if (block_stack)
+ --block_stack->data.block.conditional_code;
}
/* Move all cleanups from the current block_stack