|
|
1.1 root 1: /* the key:
2: LDI defined and initialized: storage set aside
3: LIB defined on a library
4: LDC defined as a common region on UNIX
5: LDX defined by an extern: if ! pflag, same as LDI
6: LRV function returns a value
7: LUV function used in a value context
8: LUE function used in effects context
9: LUM mentioned somewhere other than at the declaration
10: */
11: # define LDI 01
12: # define LIB 02
13: # define LDC 04
14: # define LDX 010
15: # define LRV 020
16: # define LUV 040
17: # define LUE 0100
18: # define LUM 0200
19:
20: # define LFN 0400 /* filename record */
21:
22: # ifdef FMTARGS
23: # define LPF 02000 /* printf-like function */
24: # define LSF 04000 /* scanf-like function */
25: # endif
26:
27: /* number of chars in NAME, and filename */
28: #ifndef FLEXNAMES
29: # define LCHNM 8
30: # define LFNM 14
31: #endif
32:
33: typedef struct ty {
34: TWORD aty;
35: short extra;
36: #ifdef FMTARGS
37: long straddr; /* string file offset */
38: #endif
39: } ATYPE;
40:
41: typedef struct line {
42: short decflag;
43: #ifndef FLEXNAMES
44: char name[LCHNM];
45: #else
46: char *name;
47: #endif
48: short nargs;
49: short fline;
50: ATYPE type;
51: } LINE;
52:
53: union rec {
54: struct line l;
55: struct {
56: short decflag;
57: #ifndef FLEXNAMES
58: char fn[LFNM];
59: #else
60: char *fn;
61: #endif
62: } f;
63: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.