|
|
1.1 root 1: /* stack.h - structed access to object stacks
2: Copyright (C) 1988 Free Software Foundation, Inc.
3: Contributed by Michael Tiemann ([email protected]).
4:
5: This program is free software; you can redistribute it and/or modify it
6: under the terms of the GNU General Public License as published by the
7: Free Software Foundation; either version 2, or (at your option) any
8: later version.
9:
10: This program is distributed in the hope that it will be useful,
11: but WITHOUT ANY WARRANTY; without even the implied warranty of
12: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13: GNU General Public License for more details.
14:
15: You should have received a copy of the GNU General Public License
16: along with this program; if not, write to the Free Software
17: Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
18:
19: /* Summary: this file contains additional structures that layer
20: on top of obstacks for GNU C++. */
21:
22: /* Stack of data placed on obstacks. */
23:
24: struct stack_level
25: {
26: /* Pointer back to previous such level. */
27: struct stack_level *prev;
28:
29: /* Point to obstack we should return to. */
30: struct obstack *obstack;
31:
32: /* First place we start putting data. */
33: tree *first;
34:
35: /* Number of entries we can have from `first'.
36: Right now we are dumb: if we overflow, abort. */
37: int limit;
38: };
39:
40: struct stack_level *push_stack_level PROTO((struct obstack *, char *, int));
41: struct stack_level *pop_stack_level PROTO((struct stack_level *));
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.