|
|
1.1 root 1: /*
2: * Sydney C Compiler.
3: *
4: * Copyright 1984, Bruce Ellis.
5: *
6: * Unauthorised possesion, sale or use prohibited.
7: */
8:
9: struct xnode
10: {
11: union
12: {
13: xnode *xu_xnd;
14: ident *xu_id;
15: }
16: x_u0;
17:
18: union
19: {
20: struct
21: {
22: xnode *x_x0;
23: xnode *x_x1;
24: }
25: x_s0;
26:
27: long x_l;
28: }
29: x_u1;
30:
31: xnodes x_what;
32: data x_value;
33:
34: union
35: {
36: struct
37: {
38: uchar x_c0;
39: uchar x_c1;
40: }
41: x_s1;
42:
43: short x_s;
44: }
45: x_u2;
46: };
47:
48: #define x_left x_u0.xu_xnd
49: #define x_subtype x_u0.xu_xnd
50: #define x_var x_u0.xu_id
51:
52: #define x_right x_u1.x_s0.x_x0
53: #define x_type x_u1.x_s0.x_x1
54: #define x_index x_u1.x_l
55:
56: #define x_flags x_u2.x_s
57: #define x_su x_u2.x_s1.x_c1
58:
59: #define XIS_FORVAL 0x0001
60: #define XIS_FORREF 0x0002
61: #define XIS_TEST 0x0004
62: #define XIS_HARDASSOP 0x0008
63:
64: #define XIS_LVAL 0x0010
65: #define XWAS_LVAL 0x0020
66: #define XIS_LTRAV 0x0040
67: #define XIS_RTRAV 0x0080
68:
69: #define XIS_IMPLICIT 0x0100
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.