1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
|
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
// auto generated
// DO NOT EDIT.
static const short pp_keyword_trans[][128] = {
{0,0,0,0,0,0,0,0,0,111,13,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
111,89,109,14,1,73,75,110,10,11,71,69,12,70,115,72,
7,7,7,7,7,7,7,7,7,7,105,0,8,94,9,104,
0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,0,114,0,74,6,
0,1,2,3,4,1,1,1,1,1,1,1,1,1,5,1,
1,1,1,1,1,1,1,1,1,1,1,0,81,0,84,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,92,100,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,101,93,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,15,35,0,0,0,21,0,0,0,0,0,0,
0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,22,0,0,0,0,0,0,0,45,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,28,0,0,0,0,0,0,0,0,0,31,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,36,0,41,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,
0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,113,0,0,0,0,112,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,78,0,0,0,0,0,0,0,0,0,0,0,0,0,82,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
116,116,116,116,116,116,116,116,116,116,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
};
static const struct
{
PP_Token token;
short next;
char defchar;
short defnext;
PP_Token ident;
} pp_keywords[] = {
{PP_NOTOKEN, 0, 0, 0, PP_NOTOKEN},
{PP_CHARACTER, 0, 0, 0, PP_NOTOKEN},
{PP_CHARACTER, 0, 105, 76, PP_NOTOKEN},
{PP_CHARACTER, 0, 111, 85, PP_NOTOKEN},
{PP_CHARACTER, 0, 101, 63, PP_NOTOKEN},
{PP_CHARACTER, 0, 111, 90, PP_NOTOKEN},
{PP_CHARACTER, 0, 95, 51, PP_NOTOKEN},
{PP_DIGIT, 0, 0, 0, PP_NOTOKEN},
{PP_LANGLE, 1, 0, 0, PP_NOTOKEN},
{PP_RANGLE, 2, 0, 0, PP_NOTOKEN},
{PP_LPAREN, 0, 0, 0, PP_NOTOKEN},
{PP_RPAREN, 0, 0, 0, PP_NOTOKEN},
{PP_COMMA, 0, 0, 0, PP_NOTOKEN},
{PP_NEWLINE, 0, 0, 0, PP_NOTOKEN},
{PP_HASH, 3, 0, 0, PP_HASH},
{PP_HASH, 0, 101, 16, PP_HASH},
{PP_HASH, 0, 102, 17, PP_HASH},
{PP_HASH, 0, 105, 18, PP_HASH},
{PP_HASH, 0, 110, 19, PP_HASH},
{PP_HASH, 0, 101, 20, PP_HASH},
{PP_DEFINE, 0, 0, 0, PP_HASH},
{PP_HASH, 4, 0, 0, PP_HASH},
{PP_IF, 5, 0, 0, PP_HASH},
{PP_HASH, 0, 110, 24, PP_HASH},
{PP_HASH, 0, 100, 25, PP_HASH},
{PP_HASH, 0, 101, 26, PP_HASH},
{PP_HASH, 0, 102, 27, PP_HASH},
{PP_UNDEF, 0, 0, 0, PP_HASH},
{PP_HASH, 0, 101, 29, PP_HASH},
{PP_HASH, 0, 102, 30, PP_HASH},
{PP_IFDEF, 0, 0, 0, PP_HASH},
{PP_HASH, 0, 100, 32, PP_HASH},
{PP_HASH, 0, 101, 33, PP_HASH},
{PP_HASH, 0, 102, 34, PP_HASH},
{PP_IFNDEF, 0, 0, 0, PP_HASH},
{PP_HASH, 6, 0, 0, PP_HASH},
{PP_HASH, 7, 0, 0, PP_HASH},
{PP_HASH, 0, 102, 38, PP_HASH},
{PP_ELIF, 0, 0, 0, PP_HASH},
{PP_HASH, 0, 101, 40, PP_HASH},
{PP_ELSE, 0, 0, 0, PP_HASH},
{PP_HASH, 0, 100, 42, PP_HASH},
{PP_HASH, 0, 105, 43, PP_HASH},
{PP_HASH, 0, 102, 44, PP_HASH},
{PP_ENDIF, 0, 0, 0, PP_HASH},
{PP_HASH, 0, 99, 46, PP_HASH},
{PP_HASH, 0, 108, 47, PP_HASH},
{PP_HASH, 0, 117, 48, PP_HASH},
{PP_HASH, 0, 100, 49, PP_HASH},
{PP_HASH, 0, 101, 50, PP_HASH},
{PP_INCLUDE, 0, 0, 0, PP_HASH},
{PP_CHARACTER, 0, 104, 52, PP_CHARACTER},
{PP_CHARACTER, 0, 97, 53, PP_CHARACTER},
{PP_CHARACTER, 0, 115, 54, PP_CHARACTER},
{PP_CHARACTER, 0, 95, 55, PP_CHARACTER},
{PP_CHARACTER, 0, 105, 56, PP_CHARACTER},
{PP_CHARACTER, 0, 110, 57, PP_CHARACTER},
{PP_CHARACTER, 0, 99, 58, PP_CHARACTER},
{PP_CHARACTER, 0, 108, 59, PP_CHARACTER},
{PP_CHARACTER, 0, 117, 60, PP_CHARACTER},
{PP_CHARACTER, 0, 100, 61, PP_CHARACTER},
{PP_CHARACTER, 0, 101, 62, PP_CHARACTER},
{PP_HAS_INCLUDE, 0, 0, 0, PP_CHARACTER},
{PP_CHARACTER, 0, 102, 64, PP_CHARACTER},
{PP_CHARACTER, 0, 105, 65, PP_CHARACTER},
{PP_CHARACTER, 0, 110, 66, PP_CHARACTER},
{PP_CHARACTER, 0, 101, 67, PP_CHARACTER},
{PP_CHARACTER, 0, 100, 68, PP_CHARACTER},
{PP_DEFINED, 0, 0, 0, PP_CHARACTER},
{PP_PLUS, 0, 0, 0, PP_NOTOKEN},
{PP_MINUS, 0, 0, 0, PP_NOTOKEN},
{PP_STAR, 0, 0, 0, PP_NOTOKEN},
{PP_SLASH, 8, 0, 0, PP_NOTOKEN},
{PP_PERCENT, 0, 58, 107, PP_NOTOKEN},
{PP_HAT, 0, 0, 0, PP_NOTOKEN},
{PP_AND, 0, 38, 102, PP_NOTOKEN},
{PP_CHARACTER, 0, 116, 77, PP_CHARACTER},
{PP_CHARACTER, 9, 0, 0, PP_CHARACTER},
{PP_CHARACTER, 0, 110, 79, PP_CHARACTER},
{PP_CHARACTER, 0, 100, 80, PP_CHARACTER},
{PP_AND, 0, 0, 0, PP_CHARACTER},
{PP_OR, 0, 124, 103, PP_NOTOKEN},
{PP_CHARACTER, 0, 114, 83, PP_CHARACTER},
{PP_OR, 0, 0, 0, PP_CHARACTER},
{PP_TILDE, 0, 0, 0, PP_NOTOKEN},
{PP_CHARACTER, 0, 109, 86, PP_CHARACTER},
{PP_CHARACTER, 0, 112, 87, PP_CHARACTER},
{PP_CHARACTER, 0, 108, 88, PP_CHARACTER},
{PP_TILDE, 0, 0, 0, PP_CHARACTER},
{PP_NOT, 0, 61, 96, PP_NOTOKEN},
{PP_CHARACTER, 0, 116, 91, PP_CHARACTER},
{PP_NOT, 0, 95, 97, PP_CHARACTER},
{PP_LTLT, 0, 0, 0, PP_NOTOKEN},
{PP_GTGT, 0, 0, 0, PP_NOTOKEN},
{PP_INCOMPLETE, 0, 61, 95, PP_NOTOKEN},
{PP_EQEQ, 0, 0, 0, PP_NOTOKEN},
{PP_NE, 0, 0, 0, PP_NOTOKEN},
{PP_CHARACTER, 0, 101, 98, PP_CHARACTER},
{PP_CHARACTER, 0, 113, 99, PP_CHARACTER},
{PP_NE, 0, 0, 0, PP_CHARACTER},
{PP_LE, 0, 0, 0, PP_NOTOKEN},
{PP_GE, 0, 0, 0, PP_NOTOKEN},
{PP_ANDAND, 0, 0, 0, PP_NOTOKEN},
{PP_OROR, 0, 0, 0, PP_NOTOKEN},
{PP_QUESTION, 0, 0, 0, PP_NOTOKEN},
{PP_COLON, 0, 0, 0, PP_NOTOKEN},
{PP_HASHHASH, 0, 0, 0, PP_NOTOKEN},
{PP_INCOMPLETE, 0, 37, 108, PP_NOTOKEN},
{PP_INCOMPLETE, 0, 58, 106, PP_NOTOKEN},
{PP_QUOTE, 0, 0, 0, PP_NOTOKEN},
{PP_SINGLEQUOTE, 0, 0, 0, PP_NOTOKEN},
{PP_WHITESPACE, 0, 0, 0, PP_NOTOKEN},
{PP_CPP_COMMENT, 0, 0, 0, PP_NOTOKEN},
{PP_C_COMMENT, 0, 0, 0, PP_NOTOKEN},
{PP_BACKSLASH, 0, 0, 0, PP_NOTOKEN},
{PP_INCOMPLETE, 10, 0, 0, PP_NOTOKEN},
{PP_FLOATING_LITERAL, 0, 0, 0, PP_NOTOKEN}
};
|