|
|
1.1 root 1: /*ident "@(#)ctrans:src/tqueue.h 1.3" */
2: /**************************************************************************
3:
4: C++ source for cfront, the C++ compiler front-end
5: written in the computer science research center of Bell Labs
6:
7: Copyright (c) 1984 AT&T, Inc. All Rights Reserved
8: THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T, INC.
9:
10: tqueue.h:
11:
12: *****************************************************************************/
13:
14: #ifndef EOF
15: #include <stdio.h>
16: #endif
17:
18: struct toknode {
19: TOK tok; /* token for parser */
20: bit used; /* token has been processed by lalex() */
21: YYSTYPE retval; /* $arg */
22: loc place;
23: toknode* next;
24: toknode* last;
25: static toknode* free_toks;
26: void* operator new(size_t);
27: void operator delete(void*,size_t);
28: toknode(TOK,YYSTYPE,loc);
29: };
30: extern toknode* front;
31: extern toknode* rear;
32:
33: extern void addtok(TOK,YYSTYPE,loc); /* add tok to rear of Q */
34: extern TOK deltok(int); /* take tok from front of Q */
35: extern TOK tlex();
36:
37: // interface to parser
38: extern TOK lalex();
39: extern int yychar;
40: extern YYSTYPE yylval;
41: extern TOK la_look();
42: extern void la_backup( TOK, YYSTYPE );
43: extern int la_cast();
44: extern void check_decl();
45: extern void check_cast();
46: extern TOK lalex();
47:
48: // save / restore implicit inline functions
49: extern toknode* save_text();
50: extern void restore_text();
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.