xref: /titanic_51/usr/src/lib/libpp/i386/ppdef.h (revision 602ca9ea8f9ce0933f0944601cc5d230e91a950d)
1 /*
2  *
3  * Glenn Fowler
4  * AT&T Research
5  *
6  * @(#)pp.tab (AT&T Labs Research) 2006-05-09
7  *
8  * C preprocessor tables and states
9  *
10  * + marks extensions to the standard
11  *
12  */
13 
14 #define DEFINE	1
15 #define ELIF	2
16 #define ELSE	3
17 #define ENDIF	4
18 #define ENDMAC	5
19 #define ERROR	6
20 #define IF	7
21 #define IFDEF	8
22 #define IFNDEF	9
23 #define INCLUDE	10
24 #define LET	11
25 #define LINE	12
26 #define MACDEF	13
27 #define PRAGMA	14
28 #define RENAME	15
29 #define UNDEF	16
30 #define WARNING	17
31 
32 #define X_ALLMULTIPLE	1
33 #define X_ALLPOSSIBLE	2
34 #define X_BUILTIN	3
35 #define X_CATLITERAL	4
36 #define X_CDIR	5
37 #define X_CHECKPOINT	6
38 #define X_CHOP	7
39 #define X_COMPATIBILITY	8
40 #define X_DEBUG	9
41 #define X_ELSEIF	10
42 #define X_EXTERNALIZE	11
43 #define X_FINAL	12
44 #define X_HIDE	13
45 #define X_HEADEREXPAND	14
46 #define X_HEADEREXPANDALL	15
47 #define X_HOSTED	16
48 #define X_HOSTEDTRANSITION	17
49 #define X_HOSTDIR	18
50 #define X_ID	19
51 #define X_IGNORE	20
52 #define X_INCLUDE	21
53 #define X_INITIAL	22
54 #define X_KEYARGS	23
55 #define X_LINE	24
56 #define X_LINEBASE	25
57 #define X_LINEFILE	26
58 #define X_LINEID	27
59 #define X_LINETYPE	28
60 #define X_MACREF	29
61 #define X_MAP	30
62 #define X_MAPINCLUDE	31
63 #define X_MODERN	32
64 #define X_MULTIPLE	33
65 #define X_NATIVE	34
66 #define X_NOTE	35
67 #define X_OPSPACE	36
68 #define X_PASSTHROUGH	37
69 #define X_PEDANTIC	38
70 #define X_PLUSCOMMENT	39
71 #define X_PLUSPLUS	40
72 #define X_PLUSSPLICE	41
73 #define X_PRAGMAFLAGS	42
74 #define X_PRAGMAEXPAND	43
75 #define X_PREDEFINED	44
76 #define X_PREFIX	45
77 #define X_PRESERVE	46
78 #define X_PROTO	47
79 #define X_PROTOTYPED	48
80 #define X_QUOTE	49
81 #define X_READONLY	50
82 #define X_REGUARD	51
83 #define X_RESERVED	52
84 #define X_SPACEOUT	53
85 #define X_SPLICECAT	54
86 #define X_SPLICESPACE	55
87 #define X_STANDARD	56
88 #define X_STATEMENT	57
89 #define X_STRICT	58
90 #define X_STRINGSPAN	59
91 #define X_STRINGSPLIT	60
92 #define X_SYSTEM_HEADER	61
93 #define X_TEST	62
94 #define X_TEXT	63
95 #define X_TRANSITION	64
96 #define X_TRUNCATE	65
97 #define X_VENDOR	66
98 #define X_VERSION	67
99 #define X_WARN	68
100 #define X_ZEOF	69
101 #define X_last_option	69
102 
103 #define X_DEFINED	70
104 #define X_EXISTS	71
105 #define X_INCLUDED	72
106 #define X_MATCH	73
107 #define X_NOTICED	74
108 #define X_OPTION	75
109 #define X_SIZEOF	76
110 #define X_STRCMP	77
111 
112 #define R_DEFINED	1
113 
114 #define ADD	(1<<0)
115 #define COLLECTING	(1<<1)
116 #define COMPATIBILITY	(1<<2)
117 #define COMPILE	(1<<3)
118 #define CONDITIONAL	(1<<4)
119 #define DEFINITION	(1<<5)
120 #define DIRECTIVE	(1<<6)
121 #define DISABLE	(1<<7)
122 #define EOF2NL	(1<<8)
123 #define ESCAPE	(1<<9)
124 #define FILEPOP	(1<<10)
125 #define HEADER	(1<<11)
126 #define HIDDEN	(1<<12)
127 #define JOINING	(1<<13)
128 #define NEWLINE	(1<<14)
129 #define NOEXPAND	(1L<<15)
130 #define NOSPACE	(1L<<16)
131 #define NOTEXT	(1L<<17)
132 #define NOVERTICAL	(1L<<18)
133 #define PASSEOF	(1L<<19)
134 #define PASSTHROUGH	(1L<<20)
135 #define QUOTE	(1L<<21)
136 #define SKIPCONTROL	(1L<<22)
137 #define SKIPMACRO	(1L<<23)
138 #define SPACEOUT	(1L<<24)
139 #define SQUOTE	(1L<<25)
140 #define STANDALONE	(1L<<26)
141 #define STRICT	(1L<<27)
142 #define STRIP	(1L<<28)
143 #define SYNCLINE	(1L<<29)
144 #define TRANSITION	(1L<<30)
145 #define WARN	(1L<<31)
146 
147 #define ALLMULTIPLE	(1<<0)
148 #define BUILTIN	(1<<1)
149 #define CATLITERAL	(1<<2)
150 #define DUMP	(1<<3)
151 #define EXPOSE	(1<<4)
152 #define EXTERNALIZE	(1<<5)
153 #define FILEDEPS	(1<<6)
154 #define GENDEPS	(1<<7)
155 #define HEADERDEPS	(1<<8)
156 #define HOSTED	(1<<9)
157 #define HOSTEDTRANSITION	(1<<10)
158 #define INACTIVE	(1<<11)
159 #define INIT	(1<<12)
160 #define LOADING	(1<<13)
161 #define MARKC	(1<<14)
162 #define MARKHOSTED	(1L<<15)
163 #define MARKMACRO	(1L<<16)
164 #define PEDANTIC	(1L<<17)
165 #define READONLY	(1L<<18)
166 #define RELAX	(1L<<19)
167 
168 #define ALLPOSSIBLE	(1<<0)
169 #define DEFINITIONS	(1<<1)
170 #define ELSEIF	(1<<2)
171 #define FINAL	(1<<3)
172 #define HEADEREXPAND	(1<<4)
173 #define HEADEREXPANDALL	(1<<5)
174 #define IGNORELINE	(1<<6)
175 #define INITIAL	(1<<7)
176 #define KEEPNOTEXT	(1<<8)
177 #define KEYARGS	(1<<9)
178 #define MODERN	(1<<10)
179 #define NATIVE	(1<<11)
180 #define NOHASH	(1<<12)
181 #define NOISE	(1<<13)
182 #define NOISEFILTER	(1<<14)
183 #define NOPROTO	(1L<<15)
184 #define PLUSCOMMENT	(1L<<16)
185 #define PLUSPLUS	(1L<<17)
186 #define PLUSSPLICE	(1L<<18)
187 #define PRAGMAEXPAND	(1L<<19)
188 #define PREDEFINED	(1L<<20)
189 #define PREDEFINITIONS	(1L<<21)
190 #define PREFIX	(1L<<22)
191 #define PRESERVE	(1L<<23)
192 #define PROTOTYPED	(1L<<24)
193 #define REGUARD	(1L<<25)
194 #define SPLICECAT	(1L<<26)
195 #define SPLICESPACE	(1L<<27)
196 #define STRINGSPAN	(1L<<28)
197 #define STRINGSPLIT	(1L<<29)
198 #define TRUNCATE	(1L<<30)
199 #define ZEOF	(1L<<31)
200 
201 #define V__PRAGMA	78
202 #define V_ARGC	79
203 #define V_BASE	80
204 #define V_DATE	81
205 #define V_FILE	82
206 #define V_FUNCTION	83
207 #define V_LINE	84
208 #define V_PATH	85
209 #define V_SOURCE	86
210 #define V_STDC	87
211 #define V_TIME	88
212 #define V_VERSION	89
213 #define V_DEFAULT	90
214 #define V_DIRECTIVE	91
215 #define V_EMPTY	92
216 #define V_GETENV	93
217 #define V_GETMAC	94
218 #define V_GETOPT	95
219 #define V_GETPRD	96
220 #define V_ITERATE	97
221