|
|
1.1 root 1: /*
2: * Structures for variables, initialisations
3: * and argument lists.
4: */
5: typedef struct arg arg;
6: typedef struct args args;
7: typedef struct defn defn;
8: typedef struct init init;
9:
10: struct arg
11: {
12: args *a_head;
13: args **a_tail;
14: int a_count;
15: symbol *a_file;
16: long a_line;
17: arg *a_next;
18: };
19:
20: struct args
21: {
22: type *a_type;
23: args *a_next;
24: };
25:
26: struct defn
27: {
28: obj_vars d_what;
29: type *d_type;
30: symbol *d_file;
31: long d_line;
32: defn *d_next;
33: };
34:
35: struct init
36: {
37: symbol *i_file;
38: long i_line;
39: int i_varargs;
40: init *i_next;
41: };
42:
43: struct inst
44: {
45: symbol *i_name;
46: arg *i_argdefn;
47: arg *i_args;
48: arg **i_tail;
49: defn *i_defn;
50: init *i_init;
51: inst *i_next;
52: };
53:
54: struct var
55: {
56: obj_vars v_what;
57: symbol *v_name;
58: type *v_type;
59: symbol *v_file;
60: long v_line;
61: symbol *v_ifile;
62: long v_iline;
63: long v_index;
64: int v_varargs;
65: arg *v_argdefn;
66: arg *v_args;
67: arg **v_tail;
68: var *v_next;
69: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.