Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
f015b825
Commit
f015b825
authored
Mar 17, 2006
by
osku
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add support for UNSIGNED types in InnoDB's SQL parser.
Remove trailing whitespace from flex/bison input files.
parent
92436940
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
929 additions
and
872 deletions
+929
-872
include/pars0grm.h
include/pars0grm.h
+4
-2
include/pars0pars.h
include/pars0pars.h
+2
-0
pars/lexyy.c
pars/lexyy.c
+355
-345
pars/pars0grm.c
pars/pars0grm.c
+531
-510
pars/pars0grm.h
pars/pars0grm.h
+4
-2
pars/pars0grm.y
pars/pars0grm.y
+18
-10
pars/pars0lex.l
pars/pars0lex.l
+5
-1
pars/pars0pars.c
pars/pars0pars.c
+10
-2
No files found.
include/pars0grm.h
View file @
f015b825
...
...
@@ -114,7 +114,8 @@
PARS_COMMIT_TOKEN
=
340
,
PARS_ROLLBACK_TOKEN
=
341
,
PARS_WORK_TOKEN
=
342
,
NEG
=
343
PARS_UNSIGNED_TOKEN
=
343
,
NEG
=
344
};
#endif
#define PARS_INT_LIT 258
...
...
@@ -202,7 +203,8 @@
#define PARS_COMMIT_TOKEN 340
#define PARS_ROLLBACK_TOKEN 341
#define PARS_WORK_TOKEN 342
#define NEG 343
#define PARS_UNSIGNED_TOKEN 343
#define NEG 344
...
...
include/pars0pars.h
View file @
f015b825
...
...
@@ -345,6 +345,8 @@ pars_column_def(
pars_res_word_t
*
type
,
/* in: data type */
sym_node_t
*
len
,
/* in: length of column, or
NULL */
void
*
is_unsigned
,
/* in: if not NULL, column
is of type UNSIGNED. */
void
*
is_not_null
);
/* in: if not NULL, column
is of type NOT NULL. */
/*************************************************************************
...
...
pars/lexyy.c
View file @
f015b825
#line 3 "lex.yy.c"
#include "univ.i"
#define YY_INT_ALIGNED short int
/* A lexical scanner generated by flex */
...
...
@@ -15,6 +13,8 @@
#define FLEX_BETA
#endif
#include "univ.i"
/* First, we deal with platform-specific or compiler-specific issues. */
/* begin standard C headers. */
...
...
@@ -356,8 +356,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
#define YY_NUM_RULES 1
09
#define YY_END_OF_BUFFER 11
0
#define YY_NUM_RULES 1
10
#define YY_END_OF_BUFFER 11
1
/* This struct is not used in this scanner,
but its presence is necessary. */
struct
yy_trans_info
...
...
@@ -365,48 +365,49 @@ struct yy_trans_info
flex_int32_t
yy_verify
;
flex_int32_t
yy_nxt
;
};
static
yyconst
flex_int16_t
yy_accept
[
37
0
]
=
static
yyconst
flex_int16_t
yy_accept
[
37
6
]
=
{
0
,
0
,
0
,
104
,
104
,
0
,
0
,
110
,
108
,
107
,
107
,
99
,
3
,
88
,
94
,
97
,
95
,
92
,
96
,
108
,
98
,
1
,
108
,
93
,
91
,
89
,
90
,
102
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
100
,
101
,
104
,
105
,
4
,
5
,
107
,
83
,
103
,
2
,
1
,
84
,
85
,
87
,
86
,
82
,
82
,
82
,
82
,
82
,
82
,
40
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
23
,
12
,
20
,
82
,
82
,
82
,
82
,
50
,
57
,
82
,
9
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
104
,
105
,
105
,
106
,
4
,
5
,
2
,
8
,
41
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
22
,
82
,
82
,
36
,
82
,
82
,
82
,
16
,
82
,
82
,
10
,
82
,
82
,
82
,
13
,
82
,
82
,
82
,
82
,
82
,
76
,
82
,
82
,
82
,
47
,
7
,
82
,
31
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
15
,
19
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
42
,
82
,
82
,
25
,
82
,
82
,
82
,
34
,
82
,
82
,
82
,
82
,
44
,
82
,
27
,
82
,
6
,
60
,
82
,
82
,
82
,
38
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
24
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
81
,
82
,
21
,
82
,
62
,
82
,
82
,
82
,
82
,
32
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
26
,
61
,
18
,
53
,
82
,
71
,
82
,
82
,
82
,
39
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
52
,
82
,
82
,
82
,
82
,
82
,
82
,
35
,
28
,
75
,
14
,
82
,
79
,
70
,
82
,
51
,
82
,
59
,
82
,
48
,
82
,
82
,
43
,
82
,
72
,
82
,
74
,
82
,
82
,
29
,
82
,
82
,
82
,
30
,
68
,
82
,
82
,
82
,
82
,
54
,
46
,
45
,
82
,
82
,
82
,
49
,
58
,
82
,
82
,
17
,
82
,
82
,
69
,
77
,
82
,
82
,
73
,
82
,
64
,
82
,
82
,
82
,
82
,
33
,
82
,
63
,
82
,
80
,
82
,
82
,
82
,
82
,
55
,
82
,
82
,
11
,
82
,
66
,
65
,
82
,
37
,
82
,
78
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
82
,
67
,
82
,
82
,
82
,
82
,
82
,
82
,
56
,
0
0
,
0
,
105
,
105
,
0
,
0
,
111
,
109
,
108
,
108
,
100
,
3
,
89
,
95
,
98
,
96
,
93
,
97
,
109
,
99
,
1
,
109
,
94
,
92
,
90
,
91
,
103
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
101
,
102
,
105
,
106
,
4
,
5
,
108
,
84
,
104
,
2
,
1
,
85
,
86
,
88
,
87
,
83
,
83
,
83
,
83
,
83
,
83
,
40
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
23
,
12
,
20
,
83
,
83
,
83
,
83
,
50
,
57
,
83
,
9
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
105
,
106
,
106
,
107
,
4
,
5
,
2
,
8
,
41
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
22
,
83
,
83
,
36
,
83
,
83
,
83
,
16
,
83
,
83
,
10
,
83
,
83
,
83
,
13
,
83
,
83
,
83
,
83
,
83
,
76
,
83
,
83
,
83
,
47
,
7
,
83
,
31
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
15
,
19
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
42
,
83
,
83
,
25
,
83
,
83
,
83
,
34
,
83
,
83
,
83
,
83
,
44
,
83
,
27
,
83
,
6
,
60
,
83
,
83
,
83
,
38
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
24
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
81
,
83
,
21
,
83
,
62
,
83
,
83
,
83
,
83
,
32
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
26
,
61
,
18
,
53
,
83
,
71
,
83
,
83
,
83
,
39
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
52
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
35
,
28
,
75
,
14
,
83
,
79
,
70
,
83
,
51
,
83
,
59
,
83
,
48
,
83
,
83
,
43
,
83
,
72
,
83
,
74
,
83
,
83
,
29
,
83
,
83
,
83
,
30
,
68
,
83
,
83
,
83
,
83
,
54
,
83
,
46
,
45
,
83
,
83
,
83
,
49
,
58
,
83
,
83
,
17
,
83
,
83
,
69
,
77
,
83
,
83
,
73
,
83
,
64
,
83
,
83
,
83
,
83
,
83
,
33
,
83
,
63
,
83
,
80
,
83
,
83
,
83
,
82
,
83
,
55
,
83
,
83
,
11
,
83
,
66
,
65
,
83
,
37
,
83
,
78
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
83
,
67
,
83
,
83
,
83
,
83
,
83
,
83
,
56
,
0
}
;
static
yyconst
flex_int32_t
yy_ec
[
256
]
=
...
...
@@ -450,97 +451,99 @@ static yyconst flex_int32_t yy_meta[49] =
4
,
4
,
4
,
4
,
4
,
4
,
1
,
1
}
;
static
yyconst
flex_int16_t
yy_base
[
3
76
]
=
static
yyconst
flex_int16_t
yy_base
[
3
82
]
=
{
0
,
0
,
0
,
390
,
389
,
391
,
390
,
394
,
399
,
47
,
49
,
399
,
399
,
399
,
399
,
399
,
399
,
399
,
399
,
381
,
384
,
41
,
373
,
399
,
38
,
399
,
372
,
399
,
20
,
33
,
32
,
46
,
29
,
44
,
0
,
46
,
49
,
42
,
60
,
351
,
65
,
66
,
67
,
32
,
367
,
69
,
399
,
399
,
0
,
79
,
0
,
382
,
103
,
399
,
399
,
372
,
96
,
399
,
399
,
399
,
399
,
0
,
361
,
70
,
357
,
349
,
347
,
0
,
360
,
77
,
80
,
355
,
341
,
92
,
339
,
352
,
337
,
351
,
334
,
338
,
334
,
336
,
0
,
93
,
0
,
336
,
334
,
328
,
335
,
0
,
0
,
341
,
341
,
324
,
87
,
98
,
339
,
93
,
88
,
330
,
104
,
322
,
338
,
334
,
312
,
328
,
332
,
323
,
98
,
316
,
0
,
122
,
131
,
399
,
0
,
348
,
338
,
0
,
0
,
326
,
321
,
328
,
326
,
309
,
307
,
306
,
311
,
106
,
309
,
321
,
102
,
309
,
315
,
316
,
298
,
298
,
117
,
0
,
313
,
314
,
0
,
301
,
308
,
118
,
122
,
305
,
295
,
304
,
297
,
294
,
302
,
0
,
292
,
302
,
300
,
291
,
281
,
275
,
288
,
273
,
293
,
0
,
0
,
278
,
0
,
292
,
283
,
280
,
126
,
276
,
291
,
270
,
272
,
277
,
277
,
269
,
272
,
267
,
0
,
0
,
279
,
263
,
273
,
280
,
271
,
259
,
258
,
272
,
261
,
274
,
254
,
0
,
264
,
246
,
0
,
265
,
262
,
249
,
0
,
244
,
249
,
248
,
258
,
0
,
244
,
0
,
248
,
0
,
0
,
244
,
241
,
255
,
0
,
240
,
240
,
238
,
254
,
239
,
251
,
233
,
251
,
246
,
0
,
241
,
241
,
227
,
226
,
226
,
240
,
239
,
238
,
0
,
222
,
0
,
216
,
0
,
235
,
219
,
218
,
218
,
0
,
231
,
221
,
216
,
215
,
227
,
217
,
216
,
0
,
0
,
0
,
0
,
209
,
0
,
223
,
219
,
205
,
0
,
219
,
220
,
203
,
208
,
201
,
219
,
201
,
198
,
199
,
196
,
0
,
201
,
213
,
200
,
207
,
206
,
191
,
0
,
0
,
0
,
183
,
190
,
0
,
0
,
187
,
0
,
186
,
0
,
200
,
0
,
201
,
188
,
0
,
184
,
0
,
187
,
0
,
179
,
181
,
0
,
180
,
194
,
187
,
0
,
0
,
190
,
193
,
175
,
190
,
0
,
0
,
0
,
171
,
185
,
184
,
0
,
0
,
168
,
167
,
0
,
182
,
167
,
0
,
0
,
173
,
169
,
0
,
164
,
0
,
176
,
165
,
175
,
164
,
0
,
151
,
0
,
171
,
0
,
155
,
149
,
155
,
146
,
0
,
151
,
164
,
0
,
163
,
0
,
0
,
154
,
0
,
158
,
0
,
145
,
145
,
151
,
137
,
160
,
152
,
153
,
137
,
121
,
110
,
0
,
122
,
129
,
120
,
117
,
113
,
105
,
0
,
399
,
160
,
164
,
85
,
168
,
172
,
176
0
,
0
,
396
,
395
,
397
,
396
,
400
,
405
,
47
,
49
,
405
,
405
,
405
,
405
,
405
,
405
,
405
,
405
,
387
,
390
,
41
,
379
,
405
,
38
,
405
,
378
,
405
,
20
,
33
,
32
,
46
,
29
,
44
,
0
,
46
,
49
,
42
,
60
,
357
,
65
,
66
,
67
,
32
,
373
,
69
,
405
,
405
,
0
,
79
,
0
,
388
,
103
,
405
,
405
,
378
,
96
,
405
,
405
,
405
,
405
,
0
,
367
,
70
,
363
,
355
,
353
,
0
,
366
,
77
,
80
,
361
,
347
,
92
,
345
,
358
,
343
,
357
,
340
,
344
,
340
,
342
,
0
,
93
,
0
,
342
,
340
,
334
,
341
,
0
,
0
,
347
,
347
,
330
,
87
,
98
,
345
,
93
,
88
,
336
,
104
,
328
,
344
,
340
,
318
,
100
,
339
,
330
,
98
,
323
,
0
,
122
,
132
,
405
,
0
,
355
,
345
,
0
,
0
,
333
,
328
,
335
,
333
,
316
,
314
,
313
,
318
,
118
,
316
,
328
,
104
,
316
,
322
,
323
,
305
,
305
,
119
,
0
,
320
,
321
,
0
,
308
,
315
,
121
,
124
,
312
,
302
,
311
,
304
,
301
,
309
,
0
,
299
,
309
,
307
,
298
,
288
,
282
,
295
,
280
,
300
,
0
,
0
,
285
,
0
,
299
,
290
,
287
,
128
,
283
,
290
,
297
,
276
,
278
,
283
,
283
,
275
,
278
,
273
,
0
,
0
,
285
,
269
,
279
,
286
,
277
,
265
,
264
,
278
,
267
,
280
,
260
,
0
,
270
,
252
,
0
,
271
,
268
,
255
,
0
,
250
,
255
,
254
,
264
,
0
,
250
,
0
,
254
,
0
,
0
,
250
,
247
,
261
,
0
,
246
,
246
,
244
,
260
,
245
,
257
,
239
,
257
,
252
,
0
,
247
,
247
,
233
,
232
,
245
,
231
,
245
,
244
,
243
,
0
,
227
,
0
,
221
,
0
,
240
,
224
,
223
,
223
,
0
,
236
,
226
,
221
,
220
,
232
,
222
,
221
,
0
,
0
,
0
,
0
,
214
,
0
,
228
,
224
,
210
,
0
,
224
,
225
,
208
,
213
,
206
,
224
,
206
,
203
,
204
,
201
,
0
,
206
,
218
,
205
,
212
,
202
,
210
,
195
,
0
,
0
,
0
,
187
,
194
,
0
,
0
,
191
,
0
,
190
,
0
,
204
,
0
,
205
,
192
,
0
,
188
,
0
,
191
,
0
,
183
,
185
,
0
,
184
,
198
,
191
,
0
,
0
,
194
,
197
,
179
,
194
,
0
,
190
,
0
,
0
,
174
,
188
,
187
,
0
,
0
,
171
,
170
,
0
,
185
,
170
,
0
,
0
,
176
,
172
,
0
,
167
,
0
,
179
,
179
,
167
,
177
,
166
,
0
,
153
,
0
,
173
,
0
,
157
,
151
,
157
,
0
,
148
,
0
,
153
,
166
,
0
,
165
,
0
,
0
,
156
,
0
,
160
,
0
,
147
,
147
,
153
,
139
,
162
,
154
,
155
,
139
,
122
,
112
,
0
,
123
,
130
,
121
,
118
,
114
,
102
,
0
,
405
,
162
,
166
,
85
,
170
,
174
,
178
}
;
static
yyconst
flex_int16_t
yy_def
[
3
76
]
=
static
yyconst
flex_int16_t
yy_def
[
3
82
]
=
{
0
,
369
,
1
,
370
,
370
,
371
,
371
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
369
,
369
,
373
,
374
,
375
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
373
,
374
,
374
,
369
,
375
,
369
,
369
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
372
,
0
,
369
,
369
,
369
,
369
,
369
,
369
375
,
1
,
376
,
376
,
377
,
377
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
375
,
375
,
379
,
380
,
381
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
379
,
380
,
380
,
375
,
381
,
375
,
375
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
378
,
0
,
375
,
375
,
375
,
375
,
375
,
375
}
;
static
yyconst
flex_int16_t
yy_nxt
[
4
48
]
=
static
yyconst
flex_int16_t
yy_nxt
[
4
54
]
=
{
0
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
27
,
...
...
@@ -555,45 +558,46 @@ static yyconst flex_int16_t yy_nxt[448] =
93
,
104
,
99
,
109
,
52
,
52
,
100
,
55
,
119
,
56
,
101
,
124
,
126
,
127
,
131
,
152
,
142
,
125
,
154
,
160
,
128
,
153
,
172
,
132
,
158
,
163
,
173
,
161
,
183
,
369
,
133
,
143
,
144
,
155
,
369
,
159
,
164
,
156
,
112
,
187
,
188
,
194
,
200
,
113
,
184
,
195
,
202
,
223
,
224
,
368
,
367
,
366
,
365
,
364
,
363
,
362
,
203
,
201
,
361
,
225
,
48
,
48
,
48
,
48
,
50
,
50
,
50
,
50
,
110
,
110
,
360
,
110
,
111
,
111
,
111
,
111
,
114
,
359
,
114
,
114
,
358
,
357
,
356
,
355
,
354
,
353
,
352
,
351
,
350
,
349
,
348
,
347
,
346
,
345
,
344
,
343
,
342
,
341
,
340
,
339
,
338
,
337
,
336
,
335
,
334
,
333
,
332
,
331
,
330
,
329
,
328
,
327
,
326
,
325
,
324
,
323
,
322
,
321
,
320
,
319
,
318
,
317
,
316
,
315
,
314
,
313
,
312
,
311
,
310
,
309
,
308
,
307
,
306
,
305
,
304
,
303
,
302
,
301
,
300
,
299
,
298
,
297
,
296
,
295
,
294
,
293
,
292
,
291
,
290
,
289
,
288
,
287
,
286
,
285
,
284
,
283
,
282
,
281
,
280
,
279
,
278
,
277
,
276
,
275
,
274
,
273
,
272
,
271
,
270
,
269
,
268
,
267
,
266
,
265
,
264
,
263
,
262
,
261
,
260
,
259
,
258
,
257
,
256
,
255
,
254
,
253
,
252
,
251
,
250
,
249
,
248
,
247
,
246
,
245
,
244
,
243
,
242
,
241
,
240
,
239
,
238
,
237
,
236
,
235
,
234
,
233
,
232
,
231
,
230
,
229
,
228
,
227
,
226
,
222
,
221
,
220
,
219
,
218
,
217
,
216
,
215
,
214
,
213
,
212
,
211
,
210
,
209
,
208
,
207
,
206
,
205
,
204
,
199
,
198
,
197
,
196
,
193
,
192
,
191
,
190
,
189
,
186
,
185
,
182
,
181
,
180
,
179
,
178
,
177
,
176
,
175
,
116
,
115
,
174
,
171
,
170
,
169
,
168
,
167
,
166
,
165
,
162
,
157
,
151
,
150
,
149
,
148
,
147
,
146
,
145
,
141
,
140
,
139
,
138
,
137
,
136
,
135
,
134
,
130
,
129
,
123
,
122
,
121
,
120
,
117
,
116
,
115
,
107
,
94
,
60
,
57
,
54
,
53
,
369
,
51
,
51
,
49
,
49
,
7
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
128
,
153
,
173
,
132
,
158
,
163
,
174
,
161
,
169
,
375
,
133
,
143
,
144
,
155
,
375
,
159
,
164
,
156
,
170
,
112
,
184
,
188
,
189
,
195
,
113
,
201
,
374
,
196
,
203
,
224
,
225
,
373
,
372
,
371
,
370
,
369
,
185
,
368
,
204
,
367
,
202
,
226
,
48
,
48
,
48
,
48
,
50
,
50
,
50
,
50
,
110
,
110
,
366
,
110
,
111
,
111
,
111
,
111
,
114
,
365
,
114
,
114
,
364
,
363
,
362
,
361
,
360
,
359
,
358
,
357
,
356
,
355
,
354
,
353
,
352
,
351
,
350
,
349
,
348
,
347
,
346
,
345
,
344
,
343
,
342
,
341
,
340
,
339
,
338
,
337
,
336
,
335
,
334
,
333
,
332
,
331
,
330
,
329
,
328
,
327
,
326
,
325
,
324
,
323
,
322
,
321
,
320
,
319
,
318
,
317
,
316
,
315
,
314
,
313
,
312
,
311
,
310
,
309
,
308
,
307
,
306
,
305
,
304
,
303
,
302
,
301
,
300
,
299
,
298
,
297
,
296
,
295
,
294
,
293
,
292
,
291
,
290
,
289
,
288
,
287
,
286
,
285
,
284
,
283
,
282
,
281
,
280
,
279
,
278
,
277
,
276
,
275
,
274
,
273
,
272
,
271
,
270
,
269
,
268
,
267
,
266
,
265
,
264
,
263
,
262
,
261
,
260
,
259
,
258
,
257
,
256
,
255
,
254
,
253
,
252
,
251
,
250
,
249
,
248
,
247
,
246
,
245
,
244
,
243
,
242
,
241
,
240
,
239
,
238
,
237
,
236
,
235
,
234
,
233
,
232
,
231
,
230
,
229
,
228
,
227
,
223
,
222
,
221
,
220
,
219
,
218
,
217
,
216
,
215
,
214
,
213
,
212
,
211
,
210
,
209
,
208
,
207
,
206
,
205
,
200
,
199
,
198
,
197
,
194
,
193
,
192
,
191
,
190
,
187
,
186
,
183
,
182
,
181
,
180
,
179
,
178
,
177
,
176
,
116
,
115
,
175
,
172
,
171
,
168
,
167
,
166
,
165
,
162
,
157
,
151
,
150
,
149
,
148
,
147
,
146
,
145
,
141
,
140
,
139
,
138
,
137
,
136
,
135
,
134
,
130
,
129
,
123
,
122
,
121
,
120
,
117
,
116
,
115
,
107
,
94
,
60
,
57
,
54
,
53
,
375
,
51
,
51
,
49
,
49
,
7
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
}
;
static
yyconst
flex_int16_t
yy_chk
[
4
48
]
=
static
yyconst
flex_int16_t
yy_chk
[
4
54
]
=
{
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
...
...
@@ -603,47 +607,48 @@ static yyconst flex_int16_t yy_chk[448] =
10
,
10
,
21
,
28
,
21
,
24
,
24
,
29
,
28
,
30
,
32
,
29
,
32
,
30
,
29
,
43
,
30
,
43
,
33
,
30
,
31
,
35
,
30
,
36
,
31
,
33
,
37
,
29
,
33
,
35
,
31
,
33
,
37
,
36
,
35
,
38
,
49
,
42
,
37
2
,
40
,
31
,
33
,
37
,
36
,
35
,
38
,
49
,
42
,
37
8
,
40
,
41
,
49
,
63
,
38
,
42
,
38
,
45
,
38
,
40
,
40
,
38
,
42
,
41
,
45
,
52
,
52
,
41
,
56
,
63
,
56
,
41
,
69
,
70
,
70
,
73
,
94
,
83
,
69
,
95
,
98
,
70
,
94
,
108
,
73
,
97
,
100
,
108
,
98
,
127
,
111
,
73
,
83
,
83
,
95
,
111
,
97
,
100
,
95
,
112
,
130
,
130
,
136
,
143
,
112
,
127
,
136
,
144
,
168
,
168
,
367
,
366
,
365
,
364
,
363
,
362
,
360
,
144
,
143
,
359
,
168
,
370
,
370
,
370
,
370
,
371
,
371
,
371
,
371
,
373
,
373
,
358
,
373
,
374
,
374
,
374
,
374
,
375
,
357
,
375
,
375
,
356
,
355
,
354
,
353
,
352
,
351
,
349
,
347
,
344
,
342
,
341
,
339
,
338
,
337
,
336
,
334
,
332
,
330
,
329
,
328
,
327
,
325
,
323
,
322
,
319
,
318
,
316
,
315
,
312
,
311
,
310
,
306
,
305
,
304
,
303
,
300
,
299
,
298
,
296
,
295
,
293
,
291
,
289
,
288
,
286
,
284
,
282
,
279
,
278
,
274
,
273
,
272
,
271
,
270
,
269
,
267
,
266
,
265
,
264
,
263
,
262
,
261
,
260
,
259
,
258
,
256
,
255
,
254
,
252
,
247
,
246
,
245
,
244
,
243
,
242
,
241
,
239
,
238
,
237
,
236
,
234
,
232
,
230
,
229
,
228
,
227
,
226
,
225
,
224
,
223
,
221
,
220
,
219
,
218
,
217
,
216
,
215
,
214
,
213
,
211
,
210
,
209
,
206
,
204
,
202
,
201
,
200
,
199
,
197
,
196
,
195
,
193
,
192
,
190
,
189
,
188
,
187
,
186
,
185
,
184
,
183
,
182
,
181
,
180
,
177
,
176
,
175
,
174
,
173
,
172
,
171
,
170
,
169
,
167
,
166
,
165
,
163
,
160
,
159
,
158
,
157
,
156
,
155
,
154
,
153
,
152
,
150
,
149
,
148
,
147
,
146
,
145
,
142
,
141
,
139
,
138
,
135
,
134
,
133
,
132
,
131
,
129
,
128
,
126
,
125
,
124
,
123
,
122
,
121
,
120
,
119
,
116
,
115
,
109
,
107
,
106
,
105
,
104
,
103
,
102
,
101
,
99
,
96
,
93
,
92
,
91
,
88
,
87
,
86
,
85
,
81
,
80
,
79
,
78
,
77
,
76
,
75
,
74
,
72
,
71
,
68
,
66
,
65
,
64
,
62
,
55
,
51
,
44
,
39
,
26
,
22
,
20
,
19
,
7
,
6
,
5
,
4
,
3
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
,
369
70
,
94
,
108
,
73
,
97
,
100
,
108
,
98
,
105
,
111
,
73
,
83
,
83
,
95
,
111
,
97
,
100
,
95
,
105
,
112
,
127
,
130
,
130
,
136
,
112
,
143
,
373
,
136
,
144
,
168
,
168
,
372
,
371
,
370
,
369
,
368
,
127
,
366
,
144
,
365
,
143
,
168
,
376
,
376
,
376
,
376
,
377
,
377
,
377
,
377
,
379
,
379
,
364
,
379
,
380
,
380
,
380
,
380
,
381
,
363
,
381
,
381
,
362
,
361
,
360
,
359
,
358
,
357
,
355
,
353
,
350
,
348
,
347
,
345
,
343
,
342
,
341
,
339
,
337
,
335
,
334
,
333
,
332
,
331
,
329
,
327
,
326
,
323
,
322
,
320
,
319
,
316
,
315
,
314
,
311
,
309
,
308
,
307
,
306
,
303
,
302
,
301
,
299
,
298
,
296
,
294
,
292
,
291
,
289
,
287
,
285
,
282
,
281
,
277
,
276
,
275
,
274
,
273
,
272
,
271
,
269
,
268
,
267
,
266
,
265
,
264
,
263
,
262
,
261
,
260
,
258
,
257
,
256
,
254
,
249
,
248
,
247
,
246
,
245
,
244
,
243
,
241
,
240
,
239
,
238
,
236
,
234
,
232
,
231
,
230
,
229
,
228
,
227
,
226
,
225
,
224
,
222
,
221
,
220
,
219
,
218
,
217
,
216
,
215
,
214
,
212
,
211
,
210
,
207
,
205
,
203
,
202
,
201
,
200
,
198
,
197
,
196
,
194
,
193
,
191
,
190
,
189
,
188
,
187
,
186
,
185
,
184
,
183
,
182
,
181
,
178
,
177
,
176
,
175
,
174
,
173
,
172
,
171
,
170
,
169
,
167
,
166
,
165
,
163
,
160
,
159
,
158
,
157
,
156
,
155
,
154
,
153
,
152
,
150
,
149
,
148
,
147
,
146
,
145
,
142
,
141
,
139
,
138
,
135
,
134
,
133
,
132
,
131
,
129
,
128
,
126
,
125
,
124
,
123
,
122
,
121
,
120
,
119
,
116
,
115
,
109
,
107
,
106
,
104
,
103
,
102
,
101
,
99
,
96
,
93
,
92
,
91
,
88
,
87
,
86
,
85
,
81
,
80
,
79
,
78
,
77
,
76
,
75
,
74
,
72
,
71
,
68
,
66
,
65
,
64
,
62
,
55
,
51
,
44
,
39
,
26
,
22
,
20
,
19
,
7
,
6
,
5
,
4
,
3
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
,
375
}
;
static
yy_state_type
yy_last_accepting_state
;
...
...
@@ -689,12 +694,10 @@ How to make the InnoDB parser and lexer C files:
5. Rename lex.yy.c to lexyy.c.
6. Remove the #include of unistd.h from about line 2500 of lexyy.c
7. Add '#include "univ.i"' before #include <stdio.h> in lexyy.c
6. Add '#include "univ.i"' before #include <stdio.h> in lexyy.c
(Needed for AIX)
8
. Add a type cast to int to the assignment below the comment
7
. Add a type cast to int to the assignment below the comment
'need more input.' (Removes a warning on Win64)
These instructions seem to work at least with bison-1.28 and flex-2.5.4 on
...
...
@@ -702,7 +705,7 @@ Linux.
*******************************************************/
#define YY_NO_INPUT 1
#define YY_NO_UNISTD_H 1
#line 5
6
"pars0lex.l"
#line 5
4
"pars0lex.l"
#define YYSTYPE que_node_t*
#include "univ.i"
...
...
@@ -749,7 +752,7 @@ string_append(
#line 75
1
"lex.yy.c"
#line 75
4
"lex.yy.c"
#define INITIAL 0
#define comment 1
...
...
@@ -900,10 +903,10 @@ YY_DECL
register
char
*
yy_cp
,
*
yy_bp
;
register
int
yy_act
;
#line 10
6
"pars0lex.l"
#line 10
4
"pars0lex.l"
#line 90
5
"lex.yy.c"
#line 90
8
"lex.yy.c"
if
(
(
yy_init
)
)
{
...
...
@@ -956,13 +959,13 @@ yy_match:
while
(
yy_chk
[
yy_base
[
yy_current_state
]
+
yy_c
]
!=
yy_current_state
)
{
yy_current_state
=
(
int
)
yy_def
[
yy_current_state
];
if
(
yy_current_state
>=
37
0
)
if
(
yy_current_state
>=
37
6
)
yy_c
=
yy_meta
[(
unsigned
int
)
yy_c
];
}
yy_current_state
=
yy_nxt
[
yy_base
[
yy_current_state
]
+
(
unsigned
int
)
yy_c
];
++
yy_cp
;
}
while
(
yy_current_state
!=
3
69
);
while
(
yy_current_state
!=
3
75
);
yy_cp
=
(
yy_last_accepting_cpos
);
yy_current_state
=
(
yy_last_accepting_state
);
...
...
@@ -984,7 +987,7 @@ do_action: /* This label is used only to access EOF actions. */
case
1
:
YY_RULE_SETUP
#line 10
8
"pars0lex.l"
#line 10
6
"pars0lex.l"
{
yylval
=
sym_tab_add_int_lit
(
pars_sym_tab_global
,
atoi
(
yytext
));
...
...
@@ -993,7 +996,7 @@ YY_RULE_SETUP
YY_BREAK
case
2
:
YY_RULE_SETUP
#line 11
4
"pars0lex.l"
#line 11
2
"pars0lex.l"
{
ut_error
;
/* not implemented */
...
...
@@ -1002,7 +1005,7 @@ YY_RULE_SETUP
YY_BREAK
case
3
:
YY_RULE_SETUP
#line 1
20
"pars0lex.l"
#line 1
18
"pars0lex.l"
{
/* Quoted character string literals are handled in an explicit
start state 'quoted'. This state is entered and the buffer for
...
...
@@ -1016,7 +1019,7 @@ In the state 'quoted', only two actions are possible (defined below). */
case
4
:
/* rule 4 can match eol */
YY_RULE_SETUP
#line 12
9
"pars0lex.l"
#line 12
7
"pars0lex.l"
{
/* Got a sequence of characters other than "'":
append to string buffer */
...
...
@@ -1025,7 +1028,7 @@ YY_RULE_SETUP
YY_BREAK
case
5
:
YY_RULE_SETUP
#line 13
4
"pars0lex.l"
#line 13
2
"pars0lex.l"
{
/* Got a sequence of "'" characters:
append half of them to string buffer,
...
...
@@ -1052,7 +1055,7 @@ YY_RULE_SETUP
YY_BREAK
case
6
:
YY_RULE_SETUP
#line 15
8
"pars0lex.l"
#line 15
6
"pars0lex.l"
{
yylval
=
sym_tab_add_null_lit
(
pars_sym_tab_global
);
...
...
@@ -1061,7 +1064,7 @@ YY_RULE_SETUP
YY_BREAK
case
7
:
YY_RULE_SETUP
#line 16
4
"pars0lex.l"
#line 16
2
"pars0lex.l"
{
/* Implicit cursor name */
yylval
=
sym_tab_add_str_lit
(
pars_sym_tab_global
,
...
...
@@ -1071,578 +1074,577 @@ YY_RULE_SETUP
YY_BREAK
case
8
:
YY_RULE_SETUP
#line 1
71
"pars0lex.l"
#line 1
69
"pars0lex.l"
{
return
(
PARS_AND_TOKEN
);
}
YY_BREAK
case
9
:
YY_RULE_SETUP
#line 17
5
"pars0lex.l"
#line 17
3
"pars0lex.l"
{
return
(
PARS_OR_TOKEN
);
}
YY_BREAK
case
10
:
YY_RULE_SETUP
#line 17
9
"pars0lex.l"
#line 17
7
"pars0lex.l"
{
return
(
PARS_NOT_TOKEN
);
}
YY_BREAK
case
11
:
YY_RULE_SETUP
#line 18
3
"pars0lex.l"
#line 18
1
"pars0lex.l"
{
return
(
PARS_PROCEDURE_TOKEN
);
}
YY_BREAK
case
12
:
YY_RULE_SETUP
#line 18
7
"pars0lex.l"
#line 18
5
"pars0lex.l"
{
return
(
PARS_IN_TOKEN
);
}
YY_BREAK
case
13
:
YY_RULE_SETUP
#line 1
91
"pars0lex.l"
#line 1
89
"pars0lex.l"
{
return
(
PARS_OUT_TOKEN
);
}
YY_BREAK
case
14
:
YY_RULE_SETUP
#line 19
5
"pars0lex.l"
#line 19
3
"pars0lex.l"
{
return
(
PARS_BINARY_TOKEN
);
}
YY_BREAK
case
15
:
YY_RULE_SETUP
#line 19
9
"pars0lex.l"
#line 19
7
"pars0lex.l"
{
return
(
PARS_BLOB_TOKEN
);
}
YY_BREAK
case
16
:
YY_RULE_SETUP
#line 20
3
"pars0lex.l"
#line 20
1
"pars0lex.l"
{
return
(
PARS_INT_TOKEN
);
}
YY_BREAK
case
17
:
YY_RULE_SETUP
#line 20
7
"pars0lex.l"
#line 20
5
"pars0lex.l"
{
return
(
PARS_INT_TOKEN
);
}
YY_BREAK
case
18
:
YY_RULE_SETUP
#line 2
11
"pars0lex.l"
#line 2
09
"pars0lex.l"
{
return
(
PARS_FLOAT_TOKEN
);
}
YY_BREAK
case
19
:
YY_RULE_SETUP
#line 21
5
"pars0lex.l"
#line 21
3
"pars0lex.l"
{
return
(
PARS_CHAR_TOKEN
);
}
YY_BREAK
case
20
:
YY_RULE_SETUP
#line 21
9
"pars0lex.l"
#line 21
7
"pars0lex.l"
{
return
(
PARS_IS_TOKEN
);
}
YY_BREAK
case
21
:
YY_RULE_SETUP
#line 22
3
"pars0lex.l"
#line 22
1
"pars0lex.l"
{
return
(
PARS_BEGIN_TOKEN
);
}
YY_BREAK
case
22
:
YY_RULE_SETUP
#line 22
7
"pars0lex.l"
#line 22
5
"pars0lex.l"
{
return
(
PARS_END_TOKEN
);
}
YY_BREAK
case
23
:
YY_RULE_SETUP
#line 2
31
"pars0lex.l"
#line 2
29
"pars0lex.l"
{
return
(
PARS_IF_TOKEN
);
}
YY_BREAK
case
24
:
YY_RULE_SETUP
#line 23
5
"pars0lex.l"
#line 23
3
"pars0lex.l"
{
return
(
PARS_THEN_TOKEN
);
}
YY_BREAK
case
25
:
YY_RULE_SETUP
#line 23
9
"pars0lex.l"
#line 23
7
"pars0lex.l"
{
return
(
PARS_ELSE_TOKEN
);
}
YY_BREAK
case
26
:
YY_RULE_SETUP
#line 24
3
"pars0lex.l"
#line 24
1
"pars0lex.l"
{
return
(
PARS_ELSIF_TOKEN
);
}
YY_BREAK
case
27
:
YY_RULE_SETUP
#line 24
7
"pars0lex.l"
#line 24
5
"pars0lex.l"
{
return
(
PARS_LOOP_TOKEN
);
}
YY_BREAK
case
28
:
YY_RULE_SETUP
#line 2
51
"pars0lex.l"
#line 2
49
"pars0lex.l"
{
return
(
PARS_WHILE_TOKEN
);
}
YY_BREAK
case
29
:
YY_RULE_SETUP
#line 25
5
"pars0lex.l"
#line 25
3
"pars0lex.l"
{
return
(
PARS_RETURN_TOKEN
);
}
YY_BREAK
case
30
:
YY_RULE_SETUP
#line 25
9
"pars0lex.l"
#line 25
7
"pars0lex.l"
{
return
(
PARS_SELECT_TOKEN
);
}
YY_BREAK
case
31
:
YY_RULE_SETUP
#line 26
3
"pars0lex.l"
#line 26
1
"pars0lex.l"
{
return
(
PARS_SUM_TOKEN
);
}
YY_BREAK
case
32
:
YY_RULE_SETUP
#line 26
7
"pars0lex.l"
#line 26
5
"pars0lex.l"
{
return
(
PARS_COUNT_TOKEN
);
}
YY_BREAK
case
33
:
YY_RULE_SETUP
#line 2
71
"pars0lex.l"
#line 2
69
"pars0lex.l"
{
return
(
PARS_DISTINCT_TOKEN
);
}
YY_BREAK
case
34
:
YY_RULE_SETUP
#line 27
5
"pars0lex.l"
#line 27
3
"pars0lex.l"
{
return
(
PARS_FROM_TOKEN
);
}
YY_BREAK
case
35
:
YY_RULE_SETUP
#line 27
9
"pars0lex.l"
#line 27
7
"pars0lex.l"
{
return
(
PARS_WHERE_TOKEN
);
}
YY_BREAK
case
36
:
YY_RULE_SETUP
#line 28
3
"pars0lex.l"
#line 28
1
"pars0lex.l"
{
return
(
PARS_FOR_TOKEN
);
}
YY_BREAK
case
37
:
YY_RULE_SETUP
#line 28
7
"pars0lex.l"
#line 28
5
"pars0lex.l"
{
return
(
PARS_CONSISTENT_TOKEN
);
}
YY_BREAK
case
38
:
YY_RULE_SETUP
#line 2
91
"pars0lex.l"
#line 2
89
"pars0lex.l"
{
return
(
PARS_READ_TOKEN
);
}
YY_BREAK
case
39
:
YY_RULE_SETUP
#line 29
5
"pars0lex.l"
#line 29
3
"pars0lex.l"
{
return
(
PARS_ORDER_TOKEN
);
}
YY_BREAK
case
40
:
YY_RULE_SETUP
#line 29
9
"pars0lex.l"
#line 29
7
"pars0lex.l"
{
return
(
PARS_BY_TOKEN
);
}
YY_BREAK
case
41
:
YY_RULE_SETUP
#line 30
3
"pars0lex.l"
#line 30
1
"pars0lex.l"
{
return
(
PARS_ASC_TOKEN
);
}
YY_BREAK
case
42
:
YY_RULE_SETUP
#line 30
7
"pars0lex.l"
#line 30
5
"pars0lex.l"
{
return
(
PARS_DESC_TOKEN
);
}
YY_BREAK
case
43
:
YY_RULE_SETUP
#line 3
11
"pars0lex.l"
#line 3
09
"pars0lex.l"
{
return
(
PARS_INSERT_TOKEN
);
}
YY_BREAK
case
44
:
YY_RULE_SETUP
#line 31
5
"pars0lex.l"
#line 31
3
"pars0lex.l"
{
return
(
PARS_INTO_TOKEN
);
}
YY_BREAK
case
45
:
YY_RULE_SETUP
#line 31
9
"pars0lex.l"
#line 31
7
"pars0lex.l"
{
return
(
PARS_VALUES_TOKEN
);
}
YY_BREAK
case
46
:
YY_RULE_SETUP
#line 32
3
"pars0lex.l"
#line 32
1
"pars0lex.l"
{
return
(
PARS_UPDATE_TOKEN
);
}
YY_BREAK
case
47
:
YY_RULE_SETUP
#line 32
7
"pars0lex.l"
#line 32
5
"pars0lex.l"
{
return
(
PARS_SET_TOKEN
);
}
YY_BREAK
case
48
:
YY_RULE_SETUP
#line 3
31
"pars0lex.l"
#line 3
29
"pars0lex.l"
{
return
(
PARS_DELETE_TOKEN
);
}
YY_BREAK
case
49
:
YY_RULE_SETUP
#line 33
5
"pars0lex.l"
#line 33
3
"pars0lex.l"
{
return
(
PARS_CURRENT_TOKEN
);
}
YY_BREAK
case
50
:
YY_RULE_SETUP
#line 33
9
"pars0lex.l"
#line 33
7
"pars0lex.l"
{
return
(
PARS_OF_TOKEN
);
}
YY_BREAK
case
51
:
YY_RULE_SETUP
#line 34
3
"pars0lex.l"
#line 34
1
"pars0lex.l"
{
return
(
PARS_CREATE_TOKEN
);
}
YY_BREAK
case
52
:
YY_RULE_SETUP
#line 34
7
"pars0lex.l"
#line 34
5
"pars0lex.l"
{
return
(
PARS_TABLE_TOKEN
);
}
YY_BREAK
case
53
:
YY_RULE_SETUP
#line 3
51
"pars0lex.l"
#line 3
49
"pars0lex.l"
{
return
(
PARS_INDEX_TOKEN
);
}
YY_BREAK
case
54
:
YY_RULE_SETUP
#line 35
5
"pars0lex.l"
#line 35
3
"pars0lex.l"
{
return
(
PARS_UNIQUE_TOKEN
);
}
YY_BREAK
case
55
:
YY_RULE_SETUP
#line 35
9
"pars0lex.l"
#line 35
7
"pars0lex.l"
{
return
(
PARS_CLUSTERED_TOKEN
);
}
YY_BREAK
case
56
:
YY_RULE_SETUP
#line 36
3
"pars0lex.l"
#line 36
1
"pars0lex.l"
{
return
(
PARS_DOES_NOT_FIT_IN_MEM_TOKEN
);
}
YY_BREAK
case
57
:
YY_RULE_SETUP
#line 36
7
"pars0lex.l"
#line 36
5
"pars0lex.l"
{
return
(
PARS_ON_TOKEN
);
}
YY_BREAK
case
58
:
YY_RULE_SETUP
#line 3
71
"pars0lex.l"
#line 3
69
"pars0lex.l"
{
return
(
PARS_DECLARE_TOKEN
);
}
YY_BREAK
case
59
:
YY_RULE_SETUP
#line 37
5
"pars0lex.l"
#line 37
3
"pars0lex.l"
{
return
(
PARS_CURSOR_TOKEN
);
}
YY_BREAK
case
60
:
YY_RULE_SETUP
#line 37
9
"pars0lex.l"
#line 37
7
"pars0lex.l"
{
return
(
PARS_OPEN_TOKEN
);
}
YY_BREAK
case
61
:
YY_RULE_SETUP
#line 38
3
"pars0lex.l"
#line 38
1
"pars0lex.l"
{
return
(
PARS_FETCH_TOKEN
);
}
YY_BREAK
case
62
:
YY_RULE_SETUP
#line 38
7
"pars0lex.l"
#line 38
5
"pars0lex.l"
{
return
(
PARS_CLOSE_TOKEN
);
}
YY_BREAK
case
63
:
YY_RULE_SETUP
#line 3
91
"pars0lex.l"
#line 3
89
"pars0lex.l"
{
return
(
PARS_NOTFOUND_TOKEN
);
}
YY_BREAK
case
64
:
YY_RULE_SETUP
#line 39
5
"pars0lex.l"
#line 39
3
"pars0lex.l"
{
return
(
PARS_TO_CHAR_TOKEN
);
}
YY_BREAK
case
65
:
YY_RULE_SETUP
#line 39
9
"pars0lex.l"
#line 39
7
"pars0lex.l"
{
return
(
PARS_TO_NUMBER_TOKEN
);
}
YY_BREAK
case
66
:
YY_RULE_SETUP
#line 40
3
"pars0lex.l"
#line 40
1
"pars0lex.l"
{
return
(
PARS_TO_BINARY_TOKEN
);
}
YY_BREAK
case
67
:
YY_RULE_SETUP
#line 40
7
"pars0lex.l"
#line 40
5
"pars0lex.l"
{
return
(
PARS_BINARY_TO_NUMBER_TOKEN
);
}
YY_BREAK
case
68
:
YY_RULE_SETUP
#line 4
11
"pars0lex.l"
#line 4
09
"pars0lex.l"
{
return
(
PARS_SUBSTR_TOKEN
);
}
YY_BREAK
case
69
:
YY_RULE_SETUP
#line 41
5
"pars0lex.l"
#line 41
3
"pars0lex.l"
{
return
(
PARS_REPLSTR_TOKEN
);
}
YY_BREAK
case
70
:
YY_RULE_SETUP
#line 41
9
"pars0lex.l"
#line 41
7
"pars0lex.l"
{
return
(
PARS_CONCAT_TOKEN
);
}
YY_BREAK
case
71
:
YY_RULE_SETUP
#line 42
3
"pars0lex.l"
#line 42
1
"pars0lex.l"
{
return
(
PARS_INSTR_TOKEN
);
}
YY_BREAK
case
72
:
YY_RULE_SETUP
#line 42
7
"pars0lex.l"
#line 42
5
"pars0lex.l"
{
return
(
PARS_LENGTH_TOKEN
);
}
YY_BREAK
case
73
:
YY_RULE_SETUP
#line 4
31
"pars0lex.l"
#line 4
29
"pars0lex.l"
{
return
(
PARS_SYSDATE_TOKEN
);
}
YY_BREAK
case
74
:
YY_RULE_SETUP
#line 43
5
"pars0lex.l"
#line 43
3
"pars0lex.l"
{
return
(
PARS_PRINTF_TOKEN
);
}
YY_BREAK
case
75
:
YY_RULE_SETUP
#line 43
9
"pars0lex.l"
#line 43
7
"pars0lex.l"
{
return
(
PARS_ASSERT_TOKEN
);
}
YY_BREAK
case
76
:
YY_RULE_SETUP
#line 44
3
"pars0lex.l"
#line 44
1
"pars0lex.l"
{
return
(
PARS_RND_TOKEN
);
}
YY_BREAK
case
77
:
YY_RULE_SETUP
#line 44
7
"pars0lex.l"
#line 44
5
"pars0lex.l"
{
return
(
PARS_RND_STR_TOKEN
);
}
YY_BREAK
case
78
:
YY_RULE_SETUP
#line 4
51
"pars0lex.l"
#line 4
49
"pars0lex.l"
{
return
(
PARS_ROW_PRINTF_TOKEN
);
}
YY_BREAK
case
79
:
YY_RULE_SETUP
#line 45
5
"pars0lex.l"
#line 45
3
"pars0lex.l"
{
return
(
PARS_COMMIT_TOKEN
);
}
YY_BREAK
case
80
:
YY_RULE_SETUP
#line 45
9
"pars0lex.l"
#line 45
7
"pars0lex.l"
{
return
(
PARS_ROLLBACK_TOKEN
);
}
YY_BREAK
case
81
:
YY_RULE_SETUP
#line 46
3
"pars0lex.l"
#line 46
1
"pars0lex.l"
{
return
(
PARS_WORK_TOKEN
);
}
YY_BREAK
case
82
:
YY_RULE_SETUP
#line 46
7
"pars0lex.l"
#line 46
5
"pars0lex.l"
{
yylval
=
sym_tab_add_id
(
pars_sym_tab_global
,
(
byte
*
)
yytext
,
ut_strlen
(
yytext
));
return
(
PARS_ID_TOKEN
);
return
(
PARS_UNSIGNED_TOKEN
);
}
YY_BREAK
case
83
:
YY_RULE_SETUP
#line 4
74
"pars0lex.l"
#line 4
69
"pars0lex.l"
{
return
(
PARS_DDOT_TOKEN
);
yylval
=
sym_tab_add_id
(
pars_sym_tab_global
,
(
byte
*
)
yytext
,
ut_strlen
(
yytext
));
return
(
PARS_ID_TOKEN
);
}
YY_BREAK
case
84
:
YY_RULE_SETUP
#line 47
8
"pars0lex.l"
#line 47
6
"pars0lex.l"
{
return
(
PARS_
ASSIGN
_TOKEN
);
return
(
PARS_
DDOT
_TOKEN
);
}
YY_BREAK
case
85
:
YY_RULE_SETUP
#line 48
2
"pars0lex.l"
#line 48
0
"pars0lex.l"
{
return
(
PARS_
LE
_TOKEN
);
return
(
PARS_
ASSIGN
_TOKEN
);
}
YY_BREAK
case
86
:
YY_RULE_SETUP
#line 48
6
"pars0lex.l"
#line 48
4
"pars0lex.l"
{
return
(
PARS_
G
E_TOKEN
);
return
(
PARS_
L
E_TOKEN
);
}
YY_BREAK
case
87
:
YY_RULE_SETUP
#line 4
90
"pars0lex.l"
#line 4
88
"pars0lex.l"
{
return
(
PARS_
N
E_TOKEN
);
return
(
PARS_
G
E_TOKEN
);
}
YY_BREAK
case
88
:
YY_RULE_SETUP
#line 49
4
"pars0lex.l"
#line 49
2
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
return
(
PARS_NE_TOKEN
);
}
YY_BREAK
case
89
:
YY_RULE_SETUP
#line 49
9
"pars0lex.l"
#line 49
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1650,7 +1652,7 @@ YY_RULE_SETUP
YY_BREAK
case
90
:
YY_RULE_SETUP
#line 50
4
"pars0lex.l"
#line 50
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1658,7 +1660,7 @@ YY_RULE_SETUP
YY_BREAK
case
91
:
YY_RULE_SETUP
#line 50
9
"pars0lex.l"
#line 50
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1666,7 +1668,7 @@ YY_RULE_SETUP
YY_BREAK
case
92
:
YY_RULE_SETUP
#line 51
4
"pars0lex.l"
#line 51
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1674,7 +1676,7 @@ YY_RULE_SETUP
YY_BREAK
case
93
:
YY_RULE_SETUP
#line 51
9
"pars0lex.l"
#line 51
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1682,7 +1684,7 @@ YY_RULE_SETUP
YY_BREAK
case
94
:
YY_RULE_SETUP
#line 52
4
"pars0lex.l"
#line 52
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1690,7 +1692,7 @@ YY_RULE_SETUP
YY_BREAK
case
95
:
YY_RULE_SETUP
#line 52
9
"pars0lex.l"
#line 52
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1698,7 +1700,7 @@ YY_RULE_SETUP
YY_BREAK
case
96
:
YY_RULE_SETUP
#line 53
4
"pars0lex.l"
#line 53
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1706,7 +1708,7 @@ YY_RULE_SETUP
YY_BREAK
case
97
:
YY_RULE_SETUP
#line 53
9
"pars0lex.l"
#line 53
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1714,7 +1716,7 @@ YY_RULE_SETUP
YY_BREAK
case
98
:
YY_RULE_SETUP
#line 54
4
"pars0lex.l"
#line 54
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1722,7 +1724,7 @@ YY_RULE_SETUP
YY_BREAK
case
99
:
YY_RULE_SETUP
#line 54
9
"pars0lex.l"
#line 54
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1730,7 +1732,7 @@ YY_RULE_SETUP
YY_BREAK
case
100
:
YY_RULE_SETUP
#line 55
4
"pars0lex.l"
#line 55
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1738,7 +1740,7 @@ YY_RULE_SETUP
YY_BREAK
case
101
:
YY_RULE_SETUP
#line 55
9
"pars0lex.l"
#line 55
6
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1746,7 +1748,7 @@ YY_RULE_SETUP
YY_BREAK
case
102
:
YY_RULE_SETUP
#line 56
4
"pars0lex.l"
#line 56
1
"pars0lex.l"
{
return
((
int
)(
*
yytext
));
...
...
@@ -1754,35 +1756,43 @@ YY_RULE_SETUP
YY_BREAK
case
103
:
YY_RULE_SETUP
#line 569 "pars0lex.l"
BEGIN
(
comment
);
/* eat up comment */
#line 566 "pars0lex.l"
{
return
((
int
)(
*
yytext
));
}
YY_BREAK
case
104
:
/* rule 104 can match eol */
YY_RULE_SETUP
#line 571 "pars0lex.l"
BEGIN
(
comment
);
/* eat up comment */
YY_BREAK
case
105
:
/* rule 105 can match eol */
YY_RULE_SETUP
#line 57
2
"pars0lex.l"
#line 57
3
"pars0lex.l"
YY_BREAK
case
106
:
/* rule 106 can match eol */
YY_RULE_SETUP
#line 57
3
"pars0lex.l"
BEGIN
(
INITIAL
);
#line 57
4
"pars0lex.l"
YY_BREAK
case
107
:
/* rule 107 can match eol */
YY_RULE_SETUP
#line 575 "pars0lex.l"
/* eat up whitespace */
BEGIN
(
INITIAL
);
YY_BREAK
case
108
:
/* rule 108 can match eol */
YY_RULE_SETUP
#line 578 "pars0lex.l"
#line 577 "pars0lex.l"
/* eat up whitespace */
YY_BREAK
case
109
:
YY_RULE_SETUP
#line 580 "pars0lex.l"
{
fprintf
(
stderr
,
"Unrecognized character: %02x
\n
"
,
*
yytext
);
...
...
@@ -1792,12 +1802,12 @@ YY_RULE_SETUP
return
(
0
);
}
YY_BREAK
case
1
09
:
case
1
10
:
YY_RULE_SETUP
#line 58
7
"pars0lex.l"
#line 58
9
"pars0lex.l"
YY_FATAL_ERROR
(
"flex scanner jammed"
);
YY_BREAK
#line 1
79
9 "lex.yy.c"
#line 1
80
9 "lex.yy.c"
case
YY_STATE_EOF
(
INITIAL
):
case
YY_STATE_EOF
(
comment
):
case
YY_STATE_EOF
(
quoted
):
...
...
@@ -2084,7 +2094,7 @@ static int yy_get_next_buffer (void)
while
(
yy_chk
[
yy_base
[
yy_current_state
]
+
yy_c
]
!=
yy_current_state
)
{
yy_current_state
=
(
int
)
yy_def
[
yy_current_state
];
if
(
yy_current_state
>=
37
0
)
if
(
yy_current_state
>=
37
6
)
yy_c
=
yy_meta
[(
unsigned
int
)
yy_c
];
}
yy_current_state
=
yy_nxt
[
yy_base
[
yy_current_state
]
+
(
unsigned
int
)
yy_c
];
...
...
@@ -2112,11 +2122,11 @@ static int yy_get_next_buffer (void)
while
(
yy_chk
[
yy_base
[
yy_current_state
]
+
yy_c
]
!=
yy_current_state
)
{
yy_current_state
=
(
int
)
yy_def
[
yy_current_state
];
if
(
yy_current_state
>=
37
0
)
if
(
yy_current_state
>=
37
6
)
yy_c
=
yy_meta
[(
unsigned
int
)
yy_c
];
}
yy_current_state
=
yy_nxt
[
yy_base
[
yy_current_state
]
+
(
unsigned
int
)
yy_c
];
yy_is_jam
=
(
yy_current_state
==
3
69
);
yy_is_jam
=
(
yy_current_state
==
3
75
);
return
yy_is_jam
?
0
:
yy_current_state
;
}
...
...
@@ -2145,7 +2155,7 @@ static int yy_get_next_buffer (void)
else
{
/* need more input */
int
offset
=
(
int
)(
yy_c_buf_p
-
yytext_ptr
);
int
offset
=
(
int
)((
yy_c_buf_p
)
-
(
yytext_ptr
)
);
++
(
yy_c_buf_p
);
switch
(
yy_get_next_buffer
(
)
)
...
...
@@ -2639,7 +2649,7 @@ void yyfree (void * ptr )
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
#line 58
7
"pars0lex.l"
#line 58
9
"pars0lex.l"
pars/pars0grm.c
View file @
f015b825
...
...
@@ -138,7 +138,8 @@
PARS_COMMIT_TOKEN
=
340
,
PARS_ROLLBACK_TOKEN
=
341
,
PARS_WORK_TOKEN
=
342
,
NEG
=
343
PARS_UNSIGNED_TOKEN
=
343
,
NEG
=
344
};
#endif
#define PARS_INT_LIT 258
...
...
@@ -226,7 +227,8 @@
#define PARS_COMMIT_TOKEN 340
#define PARS_ROLLBACK_TOKEN 341
#define PARS_WORK_TOKEN 342
#define NEG 343
#define PARS_UNSIGNED_TOKEN 343
#define NEG 344
...
...
@@ -279,7 +281,7 @@ typedef int YYSTYPE;
/* Line 214 of yacc.c. */
#line 28
3
"pars0grm.tab.c"
#line 28
5
"pars0grm.tab.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
...
...
@@ -385,20 +387,20 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 95
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 7
34
#define YYLAST 7
65
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 10
4
#define YYNTOKENS 10
5
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 6
4
#define YYNNTS 6
5
/* YYNRULES -- Number of rules. */
#define YYNRULES 16
4
#define YYNRULES 16
6
/* YYNRULES -- Number of states. */
#define YYNSTATES 32
1
#define YYNSTATES 32
3
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 34
3
#define YYMAXUTOK 34
4
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
...
...
@@ -409,16 +411,16 @@ static const unsigned char yytranslate[] =
0
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
9
6
,
2
,
2
,
9
8
,
99
,
93
,
92
,
101
,
91
,
2
,
94
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
9
7
,
89
,
88
,
90
,
100
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
9
7
,
2
,
2
,
9
9
,
100
,
94
,
93
,
102
,
92
,
2
,
95
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
9
8
,
90
,
89
,
91
,
101
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
10
2
,
2
,
103
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
10
3
,
2
,
104
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
...
...
@@ -440,7 +442,7 @@ static const unsigned char yytranslate[] =
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
,
95
85
,
86
,
87
,
88
,
96
};
#if YYDEBUG
...
...
@@ -460,90 +462,91 @@ static const unsigned short int yyprhs[] =
261
,
264
,
265
,
268
,
269
,
271
,
273
,
274
,
279
,
288
,
292
,
298
,
301
,
305
,
307
,
311
,
316
,
321
,
324
,
327
,
331
,
334
,
337
,
340
,
344
,
349
,
351
,
354
,
355
,
358
,
360
,
368
,
375
,
386
,
388
,
391
,
394
,
399
,
40
4
,
406
,
41
0
,
411
,
415
,
416
,
419
,
420
,
422
,
430
,
432
,
436
,
43
7
,
439
,
440
,
442
,
453
,
456
,
459
,
461
,
463
,
465
,
467
,
469
,
47
3
,
477
,
478
,
480
,
484
,
488
,
489
,
491
,
49
4
,
501
,
502
,
504
,
507
360
,
368
,
375
,
386
,
388
,
391
,
394
,
399
,
40
5
,
407
,
41
1
,
412
,
416
,
417
,
419
,
420
,
423
,
424
,
426
,
434
,
43
6
,
440
,
441
,
443
,
444
,
446
,
457
,
460
,
463
,
465
,
467
,
469
,
47
1
,
473
,
477
,
481
,
482
,
484
,
488
,
492
,
49
3
,
495
,
498
,
505
,
506
,
508
,
511
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static
const
short
int
yyrhs
[]
=
{
10
5
,
0
,
-
1
,
167
,
97
,
-
1
,
110
,
-
1
,
111
,
97
,
-
1
,
14
2
,
97
,
-
1
,
143
,
97
,
-
1
,
141
,
97
,
-
1
,
14
4
,
97
,
-
1
,
137
,
97
,
-
1
,
124
,
97
,
-
1
,
126
,
9
7
,
-
1
,
136
,
97
,
-
1
,
134
,
97
,
-
1
,
135
,
97
,
-
1
,
13
1
,
97
,
-
1
,
132
,
97
,
-
1
,
145
,
97
,
-
1
,
14
7
,
97
,
-
1
,
146
,
97
,
-
1
,
158
,
97
,
-
1
,
159
,
9
7
,
-
1
,
153
,
97
,
-
1
,
157
,
97
,
-
1
,
105
,
-
1
,
10
6
,
105
,
-
1
,
7
,
-
1
,
108
,
98
,
115
,
99
,
-
1
,
10
6
,
0
,
-
1
,
169
,
98
,
-
1
,
111
,
-
1
,
112
,
98
,
-
1
,
14
3
,
98
,
-
1
,
144
,
98
,
-
1
,
142
,
98
,
-
1
,
14
5
,
98
,
-
1
,
138
,
98
,
-
1
,
125
,
98
,
-
1
,
127
,
9
8
,
-
1
,
137
,
98
,
-
1
,
135
,
98
,
-
1
,
136
,
98
,
-
1
,
13
2
,
98
,
-
1
,
133
,
98
,
-
1
,
146
,
98
,
-
1
,
14
8
,
98
,
-
1
,
147
,
98
,
-
1
,
160
,
98
,
-
1
,
161
,
9
8
,
-
1
,
155
,
98
,
-
1
,
159
,
98
,
-
1
,
106
,
-
1
,
10
7
,
106
,
-
1
,
7
,
-
1
,
109
,
99
,
116
,
100
,
-
1
,
3
,
-
1
,
4
,
-
1
,
5
,
-
1
,
6
,
-
1
,
65
,
-
1
,
10
7
,
92
,
107
,
-
1
,
107
,
91
,
107
,
-
1
,
107
,
93
,
10
7
,
-
1
,
107
,
94
,
107
,
-
1
,
91
,
107
,
-
1
,
98
,
10
7
,
99
,
-
1
,
107
,
88
,
107
,
-
1
,
107
,
89
,
107
,
-
1
,
10
7
,
90
,
107
,
-
1
,
107
,
11
,
107
,
-
1
,
107
,
12
,
10
7
,
-
1
,
107
,
13
,
107
,
-
1
,
107
,
8
,
107
,
-
1
,
10
7
,
9
,
107
,
-
1
,
10
,
107
,
-
1
,
7
,
96
,
69
,
-
1
,
65
,
9
6
,
69
,
-
1
,
70
,
-
1
,
71
,
-
1
,
10
8
,
93
,
108
,
-
1
,
108
,
92
,
108
,
-
1
,
108
,
94
,
10
8
,
-
1
,
108
,
95
,
108
,
-
1
,
92
,
108
,
-
1
,
99
,
10
8
,
100
,
-
1
,
108
,
89
,
108
,
-
1
,
108
,
90
,
108
,
-
1
,
10
8
,
91
,
108
,
-
1
,
108
,
11
,
108
,
-
1
,
108
,
12
,
10
8
,
-
1
,
108
,
13
,
108
,
-
1
,
108
,
8
,
108
,
-
1
,
10
8
,
9
,
108
,
-
1
,
10
,
108
,
-
1
,
7
,
97
,
69
,
-
1
,
65
,
9
7
,
69
,
-
1
,
70
,
-
1
,
71
,
-
1
,
72
,
-
1
,
73
,
-
1
,
74
,
-
1
,
76
,
-
1
,
77
,
-
1
,
78
,
-
1
,
79
,
-
1
,
82
,
-
1
,
83
,
-
1
,
-
1
,
10
0
,
-
1
,
1
09
,
101
,
100
,
-
1
,
102
,
7
,
98
,
109
,
99
,
10
3
,
-
1
,
112
,
98
,
115
,
99
,
-
1
,
75
,
-
1
,
80
,
-
1
,
81
,
-
1
,
7
,
-
1
,
11
3
,
101
,
7
,
-
1
,
-
1
,
7
,
-
1
,
11
4
,
101
,
7
,
-
1
,
-
1
,
107
,
-
1
,
115
,
10
1
,
107
,
-
1
,
107
,
-
1
,
35
,
98
,
93
,
99
,
-
1
,
35
,
9
8
,
36
,
7
,
99
,
-
1
,
34
,
98
,
107
,
99
,
-
1
,
-
1
,
11
6
,
-
1
,
117
,
101
,
116
,
-
1
,
93
,
-
1
,
11
7
,
48
,
114
,
-
1
,
117
,
-
1
,
-
1
,
38
,
107
,
-
1
,
78
,
-
1
,
79
,
-
1
,
82
,
-
1
,
83
,
-
1
,
-
1
,
10
1
,
-
1
,
1
10
,
102
,
101
,
-
1
,
103
,
7
,
99
,
110
,
100
,
10
4
,
-
1
,
113
,
99
,
116
,
100
,
-
1
,
75
,
-
1
,
80
,
-
1
,
81
,
-
1
,
7
,
-
1
,
11
4
,
102
,
7
,
-
1
,
-
1
,
7
,
-
1
,
11
5
,
102
,
7
,
-
1
,
-
1
,
108
,
-
1
,
116
,
10
2
,
108
,
-
1
,
108
,
-
1
,
35
,
99
,
94
,
100
,
-
1
,
35
,
9
9
,
36
,
7
,
100
,
-
1
,
34
,
99
,
108
,
100
,
-
1
,
-
1
,
11
7
,
-
1
,
118
,
102
,
117
,
-
1
,
94
,
-
1
,
11
8
,
48
,
115
,
-
1
,
118
,
-
1
,
-
1
,
38
,
108
,
-
1
,
-
1
,
39
,
50
,
-
1
,
-
1
,
41
,
42
,
-
1
,
-
1
,
45
,
-
1
,
46
,
-
1
,
-
1
,
43
,
44
,
7
,
122
,
-
1
,
33
,
118
,
37
,
113
,
119
,
120
,
121
,
123
,
-
1
,
47
,
48
,
7
,
-
1
,
125
,
49
,
98
,
115
,
99
,
-
1
,
125
,
124
,
-
1
,
7
,
88
,
107
,
-
1
,
127
,
-
1
,
128
,
101
,
127
,
-
1
,
38
,
53
,
54
,
7
,
-
1
,
50
,
7
,
51
,
128
,
-
1
,
130
,
119
,
-
1
,
130
,
129
,
-
1
,
52
,
37
,
7
,
-
1
,
133
,
119
,
-
1
,
133
,
129
,
-
1
,
84
,
124
,
-
1
,
7
,
62
,
107
,
-
1
,
29
,
107
,
27
,
106
,
-
1
,
138
,
-
1
,
139
,
138
,
-
1
,
-
1
,
28
,
106
,
-
1
,
139
,
-
1
,
26
,
107
,
27
,
106
,
140
,
25
,
26
,
-
1
,
31
,
107
,
30
,
106
,
25
,
30
,
-
1
,
39
,
7
,
15
,
107
,
40
,
107
,
30
,
106
,
25
,
30
,
-
1
,
32
,
-
1
,
66
,
7
,
-
1
,
68
,
7
,
-
1
,
67
,
7
,
48
,
114
,
-
1
,
7
,
160
,
150
,
151
,
-
1
,
148
,
-
1
,
149
,
101
,
148
,
-
1
,
-
1
,
98
,
3
,
99
,
-
1
,
-
1
,
10
,
6
,
-
1
,
-
1
,
60
,
-
1
,
55
,
56
,
7
,
98
,
149
,
99
,
152
,
-
1
,
7
,
-
1
,
154
,
101
,
7
,
-
1
,
-
1
,
58
,
-
1
,
-
1
,
59
,
-
1
,
55
,
155
,
156
,
57
,
7
,
61
,
7
,
98
,
154
,
99
,
-
1
,
85
,
87
,
-
1
,
86
,
87
,
-
1
,
19
,
-
1
,
20
,
-
1
,
22
,
-
1
,
17
,
-
1
,
18
,
-
1
,
7
,
15
,
160
,
-
1
,
7
,
16
,
160
,
-
1
,
-
1
,
161
,
-
1
,
162
,
101
,
161
,
-
1
,
7
,
160
,
97
,
-
1
,
-
1
,
163
,
-
1
,
164
,
163
,
-
1
,
63
,
64
,
7
,
23
,
124
,
97
,
-
1
,
-
1
,
165
,
-
1
,
166
,
165
,
-
1
,
14
,
7
,
98
,
162
,
99
,
23
,
164
,
166
,
24
,
106
,
25
,
-
1
-
1
,
46
,
-
1
,
-
1
,
43
,
44
,
7
,
123
,
-
1
,
33
,
119
,
37
,
114
,
120
,
121
,
122
,
124
,
-
1
,
47
,
48
,
7
,
-
1
,
126
,
49
,
99
,
116
,
100
,
-
1
,
126
,
125
,
-
1
,
7
,
89
,
108
,
-
1
,
128
,
-
1
,
129
,
102
,
128
,
-
1
,
38
,
53
,
54
,
7
,
-
1
,
50
,
7
,
51
,
129
,
-
1
,
131
,
120
,
-
1
,
131
,
130
,
-
1
,
52
,
37
,
7
,
-
1
,
134
,
120
,
-
1
,
134
,
130
,
-
1
,
84
,
125
,
-
1
,
7
,
62
,
108
,
-
1
,
29
,
108
,
27
,
107
,
-
1
,
139
,
-
1
,
140
,
139
,
-
1
,
-
1
,
28
,
107
,
-
1
,
140
,
-
1
,
26
,
108
,
27
,
107
,
141
,
25
,
26
,
-
1
,
31
,
108
,
30
,
107
,
25
,
30
,
-
1
,
39
,
7
,
15
,
108
,
40
,
108
,
30
,
107
,
25
,
30
,
-
1
,
32
,
-
1
,
66
,
7
,
-
1
,
68
,
7
,
-
1
,
67
,
7
,
48
,
115
,
-
1
,
7
,
162
,
151
,
152
,
153
,
-
1
,
149
,
-
1
,
150
,
102
,
149
,
-
1
,
-
1
,
99
,
3
,
100
,
-
1
,
-
1
,
88
,
-
1
,
-
1
,
10
,
6
,
-
1
,
-
1
,
60
,
-
1
,
55
,
56
,
7
,
99
,
150
,
100
,
154
,
-
1
,
7
,
-
1
,
156
,
102
,
7
,
-
1
,
-
1
,
58
,
-
1
,
-
1
,
59
,
-
1
,
55
,
157
,
158
,
57
,
7
,
61
,
7
,
99
,
156
,
100
,
-
1
,
85
,
87
,
-
1
,
86
,
87
,
-
1
,
19
,
-
1
,
20
,
-
1
,
22
,
-
1
,
17
,
-
1
,
18
,
-
1
,
7
,
15
,
162
,
-
1
,
7
,
16
,
162
,
-
1
,
-
1
,
163
,
-
1
,
164
,
102
,
163
,
-
1
,
7
,
162
,
98
,
-
1
,
-
1
,
165
,
-
1
,
166
,
165
,
-
1
,
63
,
64
,
7
,
23
,
125
,
98
,
-
1
,
-
1
,
167
,
-
1
,
168
,
167
,
-
1
,
14
,
7
,
99
,
164
,
100
,
23
,
166
,
168
,
24
,
107
,
25
,
-
1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static
const
unsigned
short
int
yyrline
[]
=
{
0
,
13
1
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
1
39
,
140
,
141
,
142
,
143
,
144
,
145
,
146
,
147
,
148
,
1
49
,
150
,
151
,
152
,
156
,
157
,
162
,
163
,
165
,
166
,
16
7
,
168
,
169
,
170
,
171
,
172
,
173
,
174
,
175
,
176
,
17
7
,
178
,
179
,
180
,
181
,
182
,
183
,
184
,
185
,
187
,
19
2
,
193
,
194
,
195
,
197
,
198
,
199
,
200
,
201
,
202
,
20
3
,
206
,
208
,
209
,
213
,
218
,
223
,
224
,
225
,
229
,
23
0
,
235
,
236
,
237
,
242
,
243
,
244
,
248
,
249
,
254
,
26
0
,
267
,
268
,
269
,
274
,
276
,
278
,
282
,
283
,
287
,
28
8
,
293
,
294
,
299
,
300
,
301
,
305
,
306
,
311
,
321
,
32
6
,
328
,
333
,
337
,
338
,
343
,
349
,
356
,
361
,
366
,
37
2
,
377
,
382
,
387
,
392
,
398
,
399
,
404
,
405
,
407
,
41
1
,
418
,
424
,
432
,
436
,
442
,
448
,
453
,
458
,
459
,
46
4
,
465
,
470
,
471
,
477
,
478
,
484
,
490
,
491
,
496
,
49
7
,
501
,
502
,
506
,
514
,
519
,
524
,
525
,
526
,
527
,
5
28
,
532
,
535
,
541
,
542
,
543
,
548
,
552
,
554
,
555
,
5
59
,
564
,
566
,
567
,
571
0
,
13
2
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
139
,
1
40
,
141
,
142
,
143
,
144
,
145
,
146
,
147
,
148
,
149
,
1
50
,
151
,
152
,
153
,
157
,
158
,
163
,
164
,
166
,
167
,
16
8
,
169
,
170
,
171
,
172
,
173
,
174
,
175
,
176
,
177
,
17
8
,
179
,
180
,
181
,
182
,
183
,
184
,
185
,
186
,
188
,
19
3
,
194
,
195
,
196
,
198
,
199
,
200
,
201
,
202
,
203
,
20
4
,
207
,
209
,
210
,
214
,
219
,
224
,
225
,
226
,
230
,
23
1
,
236
,
237
,
238
,
243
,
244
,
245
,
249
,
250
,
255
,
26
1
,
268
,
269
,
270
,
275
,
277
,
279
,
283
,
284
,
288
,
28
9
,
294
,
295
,
300
,
301
,
302
,
306
,
307
,
312
,
322
,
32
7
,
329
,
334
,
338
,
339
,
344
,
350
,
357
,
362
,
367
,
37
3
,
378
,
383
,
388
,
393
,
399
,
400
,
405
,
406
,
408
,
41
2
,
419
,
425
,
433
,
437
,
443
,
449
,
454
,
459
,
460
,
46
5
,
466
,
471
,
472
,
478
,
479
,
485
,
486
,
492
,
498
,
49
9
,
504
,
505
,
509
,
510
,
514
,
522
,
527
,
532
,
533
,
5
34
,
535
,
536
,
540
,
543
,
549
,
550
,
551
,
556
,
560
,
5
62
,
563
,
567
,
572
,
574
,
575
,
579
};
#endif
...
...
@@ -579,24 +582,25 @@ static const char *const yytname[] =
"PARS_CONCAT_TOKEN"
,
"PARS_INSTR_TOKEN"
,
"PARS_LENGTH_TOKEN"
,
"PARS_SYSDATE_TOKEN"
,
"PARS_PRINTF_TOKEN"
,
"PARS_ASSERT_TOKEN"
,
"PARS_RND_TOKEN"
,
"PARS_RND_STR_TOKEN"
,
"PARS_ROW_PRINTF_TOKEN"
,
"PARS_COMMIT_TOKEN"
,
"PARS_ROLLBACK_TOKEN"
,
"PARS_WORK_TOKEN"
,
"'='"
,
"'<'"
,
"'>'"
,
"'-'"
,
"'+'"
,
"'*'"
,
"'/'"
,
"NEG"
,
"'%'"
,
"';'"
,
"'('"
,
"')'"
,
"'?'"
,
"','"
,
"'{'"
,
"'}'"
,
"$accept"
,
"statement"
,
"statement_list"
,
"exp"
,
"function_name"
,
"question_mark_list"
,
"stored_procedure_call"
,
"predefined_procedure_call"
,
"predefined_procedure_name"
,
"table_list"
,
"variable_list"
,
"exp_list"
,
"select_item"
,
"select_item_list"
,
"select_list"
,
"search_condition"
,
"for_update_clause"
,
"consistent_read_clause"
,
"order_direction"
,
"order_by_clause"
,
"select_statement"
,
"insert_statement_start"
,
"insert_statement"
,
"column_assignment"
,
"column_assignment_list"
,
"cursor_positioned"
,
"update_statement_start"
,
"update_statement_searched"
,
"update_statement_positioned"
,
"delete_statement_start"
,
"delete_statement_searched"
,
"delete_statement_positioned"
,
"row_printf_statement"
,
"assignment_statement"
,
"elsif_element"
,
"elsif_list"
,
"else_part"
,
"if_statement"
,
"while_statement"
,
"for_statement"
,
"return_statement"
,
"open_cursor_statement"
,
"close_cursor_statement"
,
"fetch_statement"
,
"column_def"
,
"column_def_list"
,
"opt_column_len"
,
"opt_not_null"
,
"PARS_COMMIT_TOKEN"
,
"PARS_ROLLBACK_TOKEN"
,
"PARS_WORK_TOKEN"
,
"PARS_UNSIGNED_TOKEN"
,
"'='"
,
"'<'"
,
"'>'"
,
"'-'"
,
"'+'"
,
"'*'"
,
"'/'"
,
"NEG"
,
"'%'"
,
"';'"
,
"'('"
,
"')'"
,
"'?'"
,
"','"
,
"'{'"
,
"'}'"
,
"$accept"
,
"statement"
,
"statement_list"
,
"exp"
,
"function_name"
,
"question_mark_list"
,
"stored_procedure_call"
,
"predefined_procedure_call"
,
"predefined_procedure_name"
,
"table_list"
,
"variable_list"
,
"exp_list"
,
"select_item"
,
"select_item_list"
,
"select_list"
,
"search_condition"
,
"for_update_clause"
,
"consistent_read_clause"
,
"order_direction"
,
"order_by_clause"
,
"select_statement"
,
"insert_statement_start"
,
"insert_statement"
,
"column_assignment"
,
"column_assignment_list"
,
"cursor_positioned"
,
"update_statement_start"
,
"update_statement_searched"
,
"update_statement_positioned"
,
"delete_statement_start"
,
"delete_statement_searched"
,
"delete_statement_positioned"
,
"row_printf_statement"
,
"assignment_statement"
,
"elsif_element"
,
"elsif_list"
,
"else_part"
,
"if_statement"
,
"while_statement"
,
"for_statement"
,
"return_statement"
,
"open_cursor_statement"
,
"close_cursor_statement"
,
"fetch_statement"
,
"column_def"
,
"column_def_list"
,
"opt_column_len"
,
"opt_unsigned"
,
"opt_not_null"
,
"not_fit_in_memory"
,
"create_table"
,
"column_list"
,
"unique_def"
,
"clustered_def"
,
"create_index"
,
"commit_statement"
,
"rollback_statement"
,
"type_name"
,
"parameter_declaration"
,
...
...
@@ -619,32 +623,32 @@ static const unsigned short int yytoknum[] =
305
,
306
,
307
,
308
,
309
,
310
,
311
,
312
,
313
,
314
,
315
,
316
,
317
,
318
,
319
,
320
,
321
,
322
,
323
,
324
,
325
,
326
,
327
,
328
,
329
,
330
,
331
,
332
,
333
,
334
,
335
,
336
,
337
,
338
,
339
,
340
,
341
,
342
,
61
,
60
,
6
2
,
45
,
43
,
42
,
47
,
343
,
37
,
59
,
40
,
41
,
63
,
44
,
123
,
125
335
,
336
,
337
,
338
,
339
,
340
,
341
,
342
,
343
,
61
,
6
0
,
62
,
45
,
43
,
42
,
47
,
344
,
37
,
59
,
40
,
41
,
63
,
44
,
123
,
125
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static
const
unsigned
char
yyr1
[]
=
{
0
,
104
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
105
,
106
,
106
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
107
,
0
,
105
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
106
,
107
,
107
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
109
,
109
,
109
,
110
,
111
,
112
,
112
,
112
,
113
,
113
,
114
,
114
,
114
,
115
,
115
,
115
,
116
,
116
,
116
,
116
,
117
,
117
,
117
,
118
,
118
,
118
,
119
,
119
,
120
,
120
,
121
,
121
,
122
,
122
,
122
,
123
,
123
,
124
,
125
,
126
,
126
,
127
,
128
,
128
,
129
,
130
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
139
,
139
,
140
,
140
,
140
,
141
,
142
,
143
,
144
,
145
,
146
,
147
,
148
,
149
,
149
,
150
,
150
,
151
,
151
,
152
,
152
,
153
,
154
,
154
,
155
,
155
,
156
,
156
,
157
,
158
,
159
,
160
,
160
,
160
,
160
,
160
,
161
,
161
,
162
,
162
,
162
,
163
,
164
,
164
,
164
,
165
,
166
,
166
,
166
,
167
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
108
,
109
,
109
,
109
,
109
,
109
,
109
,
109
,
109
,
109
,
109
,
109
,
110
,
110
,
110
,
111
,
112
,
113
,
113
,
113
,
114
,
114
,
115
,
115
,
115
,
116
,
116
,
116
,
117
,
117
,
117
,
117
,
118
,
118
,
118
,
119
,
119
,
119
,
120
,
120
,
121
,
121
,
122
,
122
,
123
,
123
,
123
,
124
,
124
,
125
,
126
,
127
,
127
,
128
,
129
,
129
,
130
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
139
,
140
,
140
,
141
,
141
,
141
,
142
,
143
,
144
,
145
,
146
,
147
,
148
,
149
,
150
,
150
,
151
,
151
,
152
,
152
,
153
,
153
,
154
,
154
,
155
,
156
,
156
,
157
,
157
,
158
,
158
,
159
,
160
,
161
,
162
,
162
,
162
,
162
,
162
,
163
,
163
,
164
,
164
,
164
,
165
,
166
,
166
,
166
,
167
,
168
,
168
,
168
,
169
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
...
...
@@ -662,11 +666,11 @@ static const unsigned char yyr2[] =
2
,
0
,
2
,
0
,
1
,
1
,
0
,
4
,
8
,
3
,
5
,
2
,
3
,
1
,
3
,
4
,
4
,
2
,
2
,
3
,
2
,
2
,
2
,
3
,
4
,
1
,
2
,
0
,
2
,
1
,
7
,
6
,
10
,
1
,
2
,
2
,
4
,
4
,
1
,
3
,
0
,
3
,
0
,
2
,
0
,
1
,
7
,
1
,
3
,
0
,
1
,
0
,
1
,
10
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
3
,
3
,
0
,
1
,
3
,
3
,
0
,
1
,
2
,
6
,
0
,
1
,
2
,
11
7
,
6
,
10
,
1
,
2
,
2
,
4
,
5
,
1
,
3
,
0
,
3
,
0
,
1
,
0
,
2
,
0
,
1
,
7
,
1
,
3
,
0
,
1
,
0
,
1
,
10
,
2
,
2
,
1
,
1
,
1
,
1
,
1
,
3
,
3
,
0
,
1
,
3
,
3
,
0
,
1
,
2
,
6
,
0
,
1
,
2
,
11
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
...
...
@@ -675,22 +679,22 @@ static const unsigned char yyr2[] =
static
const
unsigned
char
yydefact
[]
=
{
0
,
0
,
0
,
0
,
0
,
123
,
81
,
0
,
0
,
0
,
0
,
1
39
,
0
,
0
,
0
,
66
,
67
,
68
,
0
,
0
,
0
,
1
41
,
0
,
0
,
0
,
66
,
67
,
68
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
0
,
0
,
0
,
0
,
87
,
0
,
0
,
87
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
28
,
29
,
30
,
31
,
26
,
0
,
32
,
50
,
51
,
52
,
53
,
54
,
55
,
56
,
57
,
58
,
59
,
60
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
84
,
77
,
82
,
86
,
0
,
0
,
0
,
0
,
0
,
0
,
14
0
,
141
,
124
,
0
,
125
,
112
,
14
4
,
145
,
0
,
1
,
4
,
74
,
10
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
14
2
,
143
,
124
,
0
,
125
,
112
,
14
6
,
147
,
0
,
1
,
4
,
74
,
10
,
0
,
101
,
11
,
0
,
107
,
108
,
15
,
16
,
110
,
111
,
13
,
14
,
12
,
9
,
7
,
5
,
6
,
8
,
17
,
19
,
18
,
22
,
23
,
20
,
21
,
2
,
113
,
15
3
,
0
,
47
,
0
,
22
,
23
,
20
,
21
,
2
,
113
,
15
5
,
0
,
47
,
0
,
37
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
74
,
0
,
0
,
0
,
71
,
0
,
0
,
0
,
99
,
0
,
109
,
0
,
14
2
,
0
,
71
,
61
,
75
,
0
,
74
,
0
,
88
,
0
,
15
4
,
0
,
48
,
0
,
0
,
0
,
99
,
0
,
109
,
0
,
14
4
,
0
,
71
,
61
,
75
,
0
,
74
,
0
,
88
,
0
,
15
6
,
0
,
48
,
49
,
38
,
45
,
46
,
42
,
43
,
44
,
24
,
117
,
39
,
40
,
41
,
34
,
33
,
35
,
36
,
0
,
0
,
0
,
0
,
0
,
72
,
85
,
83
,
69
,
87
,
0
,
0
,
103
,
106
,
...
...
@@ -698,79 +702,79 @@ static const unsigned char yydefact[] =
0
,
0
,
0
,
0
,
0
,
25
,
115
,
119
,
0
,
27
,
0
,
80
,
0
,
78
,
0
,
0
,
0
,
89
,
0
,
0
,
0
,
0
,
128
,
0
,
0
,
0
,
0
,
76
,
100
,
105
,
1
49
,
150
,
146
,
147
,
148
,
151
,
152
,
157
,
155
,
118
,
1
51
,
152
,
148
,
149
,
150
,
153
,
154
,
159
,
157
,
118
,
0
,
116
,
0
,
121
,
79
,
73
,
70
,
0
,
91
,
0
,
102
,
104
,
130
,
13
4
,
0
,
0
,
64
,
63
,
0
,
158
,
16
1
,
0
,
120
,
90
,
0
,
96
,
0
,
0
,
132
,
135
,
13
6
,
129
,
0
,
0
,
0
,
159
,
162
,
0
,
114
,
92
,
0
,
98
,
0
,
0
,
0
,
127
,
0
,
156
,
0
,
0
,
16
3
,
0
,
0
,
131
,
133
,
137
,
0
,
0
,
0
,
93
,
122
,
143
,
0
,
0
,
164
,
94
,
95
,
97
,
138
,
0
,
1
60
102
,
104
,
130
,
13
6
,
0
,
0
,
64
,
63
,
0
,
160
,
16
3
,
0
,
120
,
90
,
0
,
96
,
0
,
0
,
132
,
137
,
13
8
,
129
,
0
,
0
,
0
,
161
,
164
,
0
,
114
,
92
,
0
,
98
,
0
,
0
,
133
,
134
,
0
,
158
,
0
,
0
,
16
5
,
0
,
0
,
131
,
0
,
127
,
139
,
0
,
0
,
0
,
93
,
122
,
135
,
145
,
0
,
0
,
166
,
94
,
95
,
97
,
1
40
,
0
,
162
};
/* YYDEFGOTO[NTERM-NUM]. */
static
const
short
int
yydefgoto
[]
=
{
-
1
,
177
,
178
,
161
,
72
,
204
,
23
,
24
,
25
,
195
,
192
,
162
,
78
,
79
,
80
,
103
,
258
,
275
,
31
7
,
291
,
192
,
162
,
78
,
79
,
80
,
103
,
258
,
275
,
31
9
,
291
,
26
,
27
,
28
,
198
,
199
,
104
,
29
,
30
,
31
,
32
,
33
,
34
,
35
,
36
,
216
,
217
,
218
,
37
,
38
,
39
,
40
,
41
,
42
,
43
,
232
,
233
,
278
,
295
,
280
,
44
,
306
,
87
,
158
,
45
,
46
,
47
,
245
,
167
,
168
,
269
,
270
,
286
,
287
,
48
40
,
41
,
42
,
43
,
232
,
233
,
278
,
295
,
305
,
280
,
44
,
307
,
87
,
158
,
45
,
46
,
47
,
245
,
167
,
168
,
2
69
,
2
70
,
286
,
287
,
48
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -20
5
#define YYPACT_NINF -20
3
static
const
short
int
yypact
[]
=
{
45
4
,
-
48
,
30
,
521
,
521
,
-
205
,
12
,
42
,
-
18
,
46
,
-
4
,
-
33
,
67
,
69
,
71
,
-
205
,
-
205
,
-
205
,
47
,
-
8
,
-
6
,
8
5
,
93
,
-
205
,
1
,
-
2
,
2
,
-
20
,
3
,
59
,
5
,
7
,
59
,
24
,
27
,
28
,
31
,
32
,
33
,
39
,
50
,
51
,
55
,
56
,
57
,
58
,
60
,
62
,
63
,
52
1
,
2
2
,
-
205
,
-
205
,
-
205
,
-
205
,
48
,
521
,
65
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
52
1
,
5
21
,
252
,
64
,
576
,
66
,
68
,
-
205
,
640
,
-
205
,
-
40
,
8
6
,
111
,
120
,
105
,
156
,
161
,
-
205
,
110
,
-
205
,
122
,
-
20
5
,
-
205
,
-
205
,
-
205
,
73
,
-
205
,
-
205
,
521
,
-
205
,
74
,
-
20
5
,
-
205
,
492
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
-
205
,
640
,
167
,
106
,
309
,
107
,
16
8
,
23
,
521
,
521
,
521
,
521
,
521
,
454
,
521
,
52
1
,
5
21
,
521
,
521
,
521
,
521
,
521
,
454
,
521
,
-
27
,
178
,
204
,
179
,
5
21
,
-
205
,
181
,
-
205
,
91
,
-
205
,
134
,
178
,
9
2
,
640
,
-
75
,
521
,
139
,
640
,
29
,
-
205
,
-
59
,
-
205
,
-
20
5
,
-
205
,
309
,
309
,
15
,
15
,
640
,
-
205
,
151
,
15
,
15
,
15
,
25
,
25
,
168
,
168
,
-
58
,
284
,
535
,
187
,
9
6
,
-
205
,
95
,
-
205
,
-
205
,
-
31
,
568
,
109
,
-
205
,
98
,
19
3
,
195
,
95
,
-
205
,
-
49
,
-
205
,
521
,
-
45
,
197
,
40
,
40
,
189
,
167
,
454
,
521
,
-
205
,
-
205
,
186
,
191
,
-
205
,
190
,
-
20
5
,
123
,
-
205
,
214
,
521
,
216
,
194
,
521
,
52
1
,
181
,
40
,
-
205
,
-
36
,
164
,
126
,
130
,
640
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
227
,
-
205
,
454
,
6
05
,
-
205
,
215
,
-
205
,
-
205
,
-
205
,
-
205
,
192
,
199
,
633
,
6
40
,
-
205
,
145
,
184
,
193
,
238
,
-
205
,
-
205
,
40
,
-
205
,
4
,
454
,
-
205
,
-
205
,
205
,
203
,
454
,
245
,
240
,
-
205
,
-
20
5
,
-
205
,
153
,
155
,
198
,
-
205
,
-
205
,
-
12
,
454
,
-
205
,
2
10
,
-
205
,
341
,
157
,
249
,
-
205
,
250
,
-
205
,
251
,
454
,
-
20
5
,
259
,
229
,
-
205
,
-
205
,
-
205
,
-
26
,
244
,
398
,
26
,
-
205
,
-
205
,
261
,
47
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
17
3
,
-
20
5
45
7
,
-
49
,
30
,
541
,
541
,
-
203
,
12
,
42
,
-
15
,
57
,
8
,
-
31
,
60
,
67
,
69
,
-
203
,
-
203
,
-
203
,
45
,
-
7
,
-
6
,
8
9
,
97
,
-
203
,
1
,
3
,
2
,
-
19
,
5
,
81
,
7
,
22
,
81
,
24
,
27
,
28
,
29
,
31
,
32
,
46
,
49
,
50
,
54
,
55
,
56
,
58
,
59
,
61
,
62
,
54
1
,
2
5
,
-
203
,
-
203
,
-
203
,
-
203
,
64
,
541
,
65
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
54
1
,
5
41
,
623
,
37
,
254
,
70
,
71
,
-
203
,
670
,
-
203
,
-
39
,
8
4
,
83
,
121
,
104
,
156
,
157
,
-
203
,
107
,
-
203
,
120
,
-
20
3
,
-
203
,
-
203
,
-
203
,
72
,
-
203
,
-
203
,
541
,
-
203
,
73
,
-
20
3
,
-
203
,
510
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
-
203
,
670
,
167
,
106
,
310
,
112
,
16
3
,
23
,
541
,
541
,
541
,
541
,
541
,
457
,
541
,
54
1
,
5
41
,
541
,
541
,
541
,
541
,
541
,
457
,
541
,
-
29
,
178
,
204
,
179
,
5
41
,
-
203
,
181
,
-
203
,
90
,
-
203
,
134
,
178
,
9
1
,
670
,
-
76
,
541
,
139
,
670
,
38
,
-
203
,
-
62
,
-
203
,
-
20
3
,
-
203
,
310
,
310
,
15
,
15
,
670
,
-
203
,
151
,
15
,
15
,
15
,
-
2
,
-
2
,
163
,
163
,
-
59
,
286
,
553
,
187
,
9
5
,
-
203
,
94
,
-
203
,
-
203
,
-
32
,
565
,
108
,
-
203
,
98
,
19
2
,
195
,
94
,
-
203
,
-
58
,
-
203
,
541
,
-
50
,
197
,
39
,
39
,
189
,
167
,
457
,
541
,
-
203
,
-
203
,
186
,
191
,
-
203
,
190
,
-
20
3
,
122
,
-
203
,
214
,
541
,
216
,
194
,
541
,
54
1
,
181
,
39
,
-
203
,
-
40
,
164
,
125
,
129
,
670
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
227
,
-
203
,
457
,
6
53
,
-
203
,
215
,
-
203
,
-
203
,
-
203
,
-
203
,
193
,
199
,
660
,
6
70
,
-
203
,
143
,
184
,
192
,
238
,
-
203
,
-
203
,
39
,
-
203
,
16
,
457
,
-
203
,
-
203
,
205
,
203
,
457
,
245
,
162
,
-
203
,
-
20
3
,
-
203
,
152
,
154
,
196
,
-
203
,
-
203
,
-
12
,
457
,
-
203
,
2
09
,
-
203
,
343
,
155
,
-
203
,
246
,
250
,
-
203
,
251
,
457
,
-
20
3
,
252
,
231
,
-
203
,
258
,
-
203
,
-
203
,
-
27
,
247
,
400
,
26
,
-
203
,
-
203
,
-
203
,
261
,
45
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
20
3
,
173
,
-
203
};
/* YYPGOTO[NTERM-NUM]. */
static
const
short
int
yypgoto
[]
=
{
-
20
5
,
0
,
-
126
,
-
1
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
11
2
,
-
124
,
135
,
-
205
,
-
205
,
-
28
,
-
205
,
-
205
,
-
205
,
-
205
,
-
17
,
-
20
5
,
-
205
,
43
,
-
205
,
257
,
-
205
,
-
205
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
76
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
8
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
20
5
,
-
205
,
-
205
,
-
205
,
-
205
,
-
205
,
-
204
,
72
,
-
205
,
20
,
-
205
,
10
,
-
205
,
-
205
-
20
3
,
0
,
-
126
,
-
1
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
11
3
,
-
124
,
123
,
-
203
,
-
203
,
-
28
,
-
203
,
-
203
,
-
203
,
-
203
,
-
17
,
-
20
3
,
-
203
,
74
,
-
203
,
253
,
-
203
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
77
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
33
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
20
3
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
203
,
-
202
,
78
,
-
203
,
9
,
-
203
,
4
,
-
203
,
-
203
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
...
...
@@ -780,158 +784,164 @@ static const short int yypgoto[] =
#define YYTABLE_NINF -1
static
const
unsigned
short
int
yytable
[]
=
{
22
,
91
,
71
,
73
,
107
,
77
,
2
46
,
225
,
149
,
18
9
,
100
,
268
,
299
,
6
,
49
,
51
,
52
,
53
,
54
,
55
,
187
,
186
,
56
,
85
,
205
,
86
,
206
,
262
,
136
,
99
,
82
,
132
,
133
,
84
,
134
,
135
,
136
,
50
,
136
,
207
,
21
1
,
219
,
212
,
206
,
209
,
210
,
74
,
75
,
125
,
81
,
23
5
,
284
,
236
,
83
,
238
,
128
,
206
,
240
,
241
,
242
,
2
43
,
150
,
244
,
263
,
283
,
264
,
190
,
284
,
130
,
131
,
226
,
31
5
,
316
,
311
,
88
,
312
,
89
,
57
,
90
,
92
,
6
,
93
,
58
,
59
,
60
,
61
,
62
,
249
,
63
,
64
,
65
,
66
,
94
,
95
,
67
,
68
,
97
,
102
,
96
,
98
,
101
,
165
,
105
,
69
,
106
,
76
,
141
,
142
,
143
,
144
,
70
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
143
,
144
,
1
26
,
109
,
171
,
151
,
110
,
111
,
152
,
153
,
112
,
113
,
114
,
172
,
173
,
174
,
175
,
176
,
1
1
5
,
179
,
180
,
181
,
182
,
183
,
184
,
185
,
1
27
,
288
,
188
,
116
,
117
,
77
,
292
,
196
,
118
,
119
,
120
,
1
21
,
154
,
122
,
1
,
123
,
124
,
12
9
,
145
,
155
,
147
,
2
,
148
,
227
,
156
,
15
7
,
1
59
,
160
,
163
,
308
,
166
,
169
,
170
,
3
,
215
,
213
,
214
,
1
36
,
4
,
5
,
6
,
191
,
194
,
215
,
197
,
200
,
7
,
201
,
203
,
208
,
222
,
223
,
224
,
229
,
8
,
23
0
,
23
1
,
9
,
234
,
10
,
239
,
237
,
11
,
51
,
52
,
53
,
22
,
91
,
71
,
73
,
107
,
77
,
2
25
,
189
,
246
,
14
9
,
100
,
136
,
299
,
49
,
6
,
51
,
52
,
53
,
54
,
55
,
187
,
186
,
56
,
268
,
205
,
85
,
206
,
86
,
136
,
262
,
99
,
132
,
133
,
82
,
134
,
135
,
136
,
50
,
211
,
207
,
21
2
,
219
,
235
,
206
,
236
,
84
,
74
,
75
,
125
,
81
,
23
8
,
284
,
206
,
209
,
210
,
128
,
240
,
241
,
242
,
243
,
2
63
,
244
,
264
,
150
,
83
,
190
,
283
,
88
,
130
,
131
,
226
,
31
7
,
318
,
313
,
89
,
314
,
90
,
57
,
6
,
284
,
92
,
93
,
58
,
59
,
60
,
61
,
62
,
249
,
63
,
64
,
65
,
66
,
143
,
144
,
67
,
68
,
94
,
95
,
152
,
96
,
98
,
165
,
97
,
101
,
69
,
105
,
76
,
141
,
142
,
143
,
144
,
70
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
102
,
1
06
,
151
,
109
,
171
,
126
,
110
,
111
,
112
,
153
,
113
,
114
,
172
,
173
,
174
,
175
,
176
,
1
4
5
,
179
,
180
,
181
,
182
,
183
,
184
,
185
,
1
15
,
288
,
188
,
116
,
117
,
77
,
292
,
196
,
118
,
119
,
120
,
1
54
,
121
,
122
,
1
,
123
,
124
,
12
7
,
129
,
155
,
156
,
2
,
157
,
227
,
159
,
14
7
,
1
48
,
160
,
163
,
309
,
166
,
169
,
136
,
3
,
215
,
213
,
214
,
1
70
,
4
,
5
,
6
,
191
,
194
,
215
,
197
,
200
,
7
,
201
,
203
,
208
,
222
,
223
,
224
,
229
,
8
,
23
1
,
23
0
,
9
,
234
,
10
,
239
,
237
,
11
,
51
,
52
,
53
,
54
,
55
,
247
,
250
,
56
,
214
,
252
,
12
,
13
,
14
,
253
,
255
,
254
,
256
,
165
,
265
,
15
,
259
,
260
,
266
,
267
,
16
,
17
,
257
,
268
,
18
,
19
,
20
,
74
,
75
,
274
,
272
,
273
,
277
,
279
,
282
,
290
,
289
,
293
,
215
,
294
,
296
,
297
,
21
,
301
,
304
,
303
,
305
,
307
,
310
,
132
,
133
,
298
,
134
,
135
,
136
,
309
,
313
,
318
,
57
,
320
,
202
,
281
,
261
,
58
,
59
,
60
,
61
,
62
,
137
,
63
,
64
,
65
,
66
,
248
,
193
,
67
,
68
,
215
,
108
,
285
,
1
,
215
,
251
,
0
,
69
,
319
,
300
,
2
,
0
,
0
,
0
,
70
,
0
,
0
,
0
,
0
,
0
,
215
,
220
,
3
,
0
,
0
,
0
,
0
,
4
,
5
,
6
,
0
,
0
,
134
,
135
,
136
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
1
,
0
,
12
,
13
,
14
,
0
,
0
,
2
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
302
,
3
,
18
,
19
,
20
,
0
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
21
,
0
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
1
,
0
,
12
,
13
,
14
,
0
,
0
,
2
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
314
,
3
,
18
,
19
,
20
,
0
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
21
,
0
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
12
,
13
,
14
,
0
,
2
,
0
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
3
,
0
,
18
,
19
,
20
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
51
,
52
,
53
,
54
,
55
,
21
,
8
,
56
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
12
,
13
,
14
,
0
,
51
,
52
,
53
,
54
,
55
,
15
,
0
,
56
,
0
,
0
,
16
,
17
,
0
,
0
,
18
,
19
,
20
,
0
,
0
,
132
,
133
,
164
,
134
,
135
,
136
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
57
,
0
,
0
,
0
,
0
,
58
,
59
,
60
,
61
,
62
,
0
,
63
,
64
,
65
,
66
,
0
,
0
,
67
,
68
,
132
,
133
,
0
,
134
,
135
,
136
,
0
,
69
,
132
,
133
,
57
,
134
,
135
,
136
,
70
,
58
,
59
,
60
,
61
,
62
,
0
,
63
,
64
,
65
,
66
,
0
,
0
,
67
,
68
,
0
,
146
,
0
,
228
,
0
,
0
,
0
,
69
,
132
,
133
,
0
,
134
,
135
,
136
,
70
,
0
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
0
,
271
,
0
,
221
,
0
,
0
,
0
,
0
,
0
,
0
,
132
,
133
,
0
,
134
,
135
,
136
,
0
,
132
,
133
,
0
,
134
,
135
,
136
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
276
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
274
,
272
,
277
,
273
,
279
,
282
,
290
,
289
,
293
,
215
,
294
,
296
,
297
,
301
,
21
,
303
,
304
,
306
,
308
,
310
,
298
,
311
,
132
,
133
,
312
,
134
,
135
,
136
,
320
,
57
,
315
,
322
,
202
,
193
,
58
,
59
,
60
,
61
,
62
,
285
,
63
,
64
,
65
,
66
,
146
,
108
,
67
,
68
,
215
,
0
,
248
,
300
,
215
,
1
,
251
,
0
,
69
,
281
,
321
,
0
,
2
,
0
,
0
,
70
,
261
,
0
,
0
,
0
,
0
,
215
,
0
,
220
,
3
,
0
,
0
,
0
,
0
,
4
,
5
,
6
,
0
,
134
,
135
,
136
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
1
,
0
,
12
,
13
,
14
,
0
,
0
,
2
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
302
,
3
,
18
,
19
,
20
,
0
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
1
,
0
,
12
,
13
,
14
,
0
,
0
,
2
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
316
,
3
,
18
,
19
,
20
,
0
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
12
,
13
,
14
,
0
,
0
,
2
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
0
,
3
,
18
,
19
,
20
,
0
,
4
,
5
,
6
,
0
,
0
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
8
,
0
,
0
,
9
,
0
,
10
,
0
,
0
,
11
,
51
,
52
,
53
,
54
,
55
,
0
,
0
,
56
,
0
,
0
,
12
,
13
,
14
,
0
,
0
,
0
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
0
,
16
,
17
,
0
,
0
,
18
,
19
,
20
,
51
,
52
,
53
,
54
,
55
,
0
,
0
,
56
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
132
,
133
,
164
,
134
,
135
,
136
,
0
,
0
,
0
,
0
,
0
,
0
,
132
,
133
,
57
,
134
,
135
,
136
,
0
,
58
,
59
,
60
,
61
,
62
,
0
,
63
,
64
,
65
,
66
,
0
,
0
,
67
,
68
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
69
,
0
,
0
,
228
,
57
,
0
,
0
,
70
,
0
,
58
,
59
,
60
,
61
,
62
,
0
,
63
,
64
,
65
,
66
,
0
,
0
,
67
,
68
,
0
,
0
,
0
,
0
,
0
,
0
,
132
,
133
,
69
,
134
,
135
,
136
,
0
,
0
,
0
,
70
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
137
,
0
,
0
,
221
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
132
,
133
,
0
,
134
,
135
,
136
,
0
,
132
,
133
,
0
,
134
,
135
,
136
,
0
,
0
,
0
,
0
,
132
,
133
,
271
,
134
,
135
,
136
,
0
,
0
,
0
,
0
,
0
,
0
,
276
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
138
,
139
,
140
,
141
,
142
,
143
,
144
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
0
,
0
,
0
,
138
,
139
,
140
,
141
,
142
,
143
,
144
};
static
const
short
int
yycheck
[]
=
{
0
,
18
,
3
,
4
,
32
,
6
,
210
,
38
,
48
,
36
,
27
,
7
,
24
,
33
,
62
,
3
,
4
,
5
,
6
,
7
,
146
,
145
,
10
,
56
,
99
,
58
,
101
,
231
,
13
,
49
,
4
8
,
8
,
9
,
37
,
11
,
12
,
13
,
7
,
13
,
163
,
99
,
99
,
101
,
101
,
15
,
16
,
34
,
35
,
49
,
7
,
99
,
63
,
101
,
7
,
99
,
56
,
101
,
17
,
18
,
19
,
20
,
101
,
22
,
99
,
268
,
101
,
93
,
63
,
69
,
70
,
10
1
,
45
,
46
,
99
,
7
,
101
,
7
,
65
,
7
,
87
,
33
,
87
,
70
,
71
,
72
,
73
,
74
,
213
,
76
,
77
,
78
,
79
,
7
,
0
,
82
,
83
,
98
,
38
,
97
,
97
,
9
7
,
102
,
97
,
91
,
97
,
93
,
91
,
92
,
93
,
94
,
9
8
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
93
,
94
,
98
,
97
,
99
,
37
,
97
,
97
,
15
,
7
,
97
,
97
,
9
7
,
132
,
133
,
134
,
135
,
136
,
97
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
9
6
,
271
,
147
,
97
,
97
,
150
,
276
,
152
,
9
7
,
97
,
97
,
97
,
51
,
97
,
7
,
97
,
9
7
,
96
,
98
,
7
,
98
,
14
,
98
,
195
,
7
,
5
9
,
48
,
98
,
98
,
299
,
7
,
69
,
69
,
26
,
178
,
28
,
29
,
13
,
31
,
32
,
33
,
7
,
7
,
187
,
7
,
98
,
39
,
57
,
10
0
,
54
,
7
,
99
,
101
,
88
,
47
,
101
,
7
,
50
,
7
,
52
,
7
,
206
,
55
,
3
,
4
,
5
,
0
,
18
,
3
,
4
,
32
,
6
,
38
,
36
,
210
,
48
,
27
,
13
,
24
,
62
,
33
,
3
,
4
,
5
,
6
,
7
,
146
,
145
,
10
,
7
,
100
,
56
,
102
,
58
,
13
,
231
,
4
9
,
8
,
9
,
48
,
11
,
12
,
13
,
7
,
100
,
163
,
102
,
100
,
100
,
102
,
102
,
37
,
34
,
35
,
49
,
7
,
100
,
63
,
102
,
15
,
16
,
56
,
17
,
18
,
19
,
20
,
100
,
22
,
102
,
102
,
7
,
94
,
268
,
7
,
69
,
70
,
10
2
,
45
,
46
,
100
,
7
,
102
,
7
,
65
,
33
,
63
,
87
,
87
,
70
,
71
,
72
,
73
,
74
,
213
,
76
,
77
,
78
,
79
,
94
,
95
,
82
,
83
,
7
,
0
,
15
,
98
,
9
8
,
102
,
99
,
98
,
92
,
98
,
94
,
92
,
93
,
94
,
9
5
,
99
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
38
,
98
,
37
,
98
,
100
,
99
,
98
,
98
,
98
,
7
,
98
,
9
8
,
132
,
133
,
134
,
135
,
136
,
99
,
138
,
139
,
140
,
141
,
142
,
143
,
144
,
9
8
,
271
,
147
,
98
,
98
,
150
,
276
,
152
,
9
8
,
98
,
98
,
51
,
98
,
98
,
7
,
98
,
9
8
,
97
,
97
,
7
,
7
,
14
,
59
,
195
,
48
,
9
9
,
99
,
99
,
99
,
299
,
7
,
69
,
13
,
26
,
178
,
28
,
29
,
69
,
31
,
32
,
33
,
7
,
7
,
187
,
7
,
99
,
39
,
57
,
10
1
,
54
,
7
,
100
,
102
,
89
,
47
,
7
,
102
,
50
,
7
,
52
,
7
,
206
,
55
,
3
,
4
,
5
,
6
,
7
,
23
,
214
,
10
,
29
,
25
,
66
,
67
,
68
,
30
,
7
,
99
,
7
,
225
,
61
,
75
,
228
,
229
,
103
,
100
,
80
,
81
,
39
,
7
,
84
,
85
,
86
,
34
,
35
,
41
,
26
,
50
,
98
,
60
,
7
,
43
,
42
,
3
,
249
,
10
,
98
,
97
,
102
,
44
,
6
,
99
,
7
,
7
,
30
,
8
,
9
,
64
,
11
,
12
,
13
,
7
,
23
,
7
,
65
,
97
,
159
,
264
,
230
,
70
,
71
,
72
,
73
,
74
,
27
,
76
,
77
,
78
,
79
,
212
,
150
,
82
,
83
,
288
,
32
,
270
,
7
,
292
,
217
,
-
1
,
91
,
313
,
287
,
14
,
-
1
,
-
1
,
-
1
,
98
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
308
,
25
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
11
,
12
,
13
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
-
1
,
7
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
25
,
26
,
84
,
85
,
86
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
102
,
-
1
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
-
1
,
7
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
25
,
26
,
84
,
85
,
86
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
102
,
-
1
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
7
,
-
1
,
-
1
,
66
,
67
,
68
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
26
,
-
1
,
84
,
85
,
86
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
3
,
4
,
5
,
6
,
7
,
102
,
47
,
10
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
66
,
67
,
68
,
-
1
,
3
,
4
,
5
,
6
,
7
,
75
,
-
1
,
10
,
-
1
,
-
1
,
80
,
81
,
-
1
,
-
1
,
84
,
85
,
86
,
-
1
,
-
1
,
8
,
9
,
53
,
11
,
12
,
13
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
102
,
65
,
-
1
,
-
1
,
-
1
,
-
1
,
70
,
71
,
72
,
73
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
82
,
83
,
8
,
9
,
-
1
,
11
,
12
,
13
,
-
1
,
91
,
8
,
9
,
65
,
11
,
12
,
13
,
98
,
70
,
71
,
72
,
73
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
82
,
83
,
-
1
,
30
,
-
1
,
40
,
-
1
,
-
1
,
-
1
,
91
,
8
,
9
,
-
1
,
11
,
12
,
13
,
98
,
-
1
,
-
1
,
-
1
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
27
,
-
1
,
99
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
8
,
9
,
-
1
,
11
,
12
,
13
,
-
1
,
8
,
9
,
-
1
,
11
,
12
,
13
,
-
1
,
-
1
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
30
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
30
,
7
,
100
,
7
,
225
,
61
,
75
,
228
,
229
,
104
,
101
,
80
,
81
,
39
,
7
,
84
,
85
,
86
,
34
,
35
,
41
,
26
,
99
,
50
,
60
,
7
,
43
,
42
,
3
,
249
,
88
,
99
,
98
,
44
,
103
,
100
,
10
,
7
,
7
,
7
,
64
,
30
,
8
,
9
,
6
,
11
,
12
,
13
,
7
,
65
,
23
,
98
,
159
,
150
,
70
,
71
,
72
,
73
,
74
,
270
,
76
,
77
,
78
,
79
,
30
,
32
,
82
,
83
,
288
,
-
1
,
212
,
287
,
292
,
7
,
217
,
-
1
,
92
,
264
,
315
,
-
1
,
14
,
-
1
,
-
1
,
99
,
230
,
-
1
,
-
1
,
-
1
,
-
1
,
309
,
-
1
,
25
,
26
,
-
1
,
-
1
,
-
1
,
-
1
,
31
,
32
,
33
,
-
1
,
11
,
12
,
13
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
-
1
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
7
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
25
,
26
,
84
,
85
,
86
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
103
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
-
1
,
7
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
25
,
26
,
84
,
85
,
86
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
103
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
7
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
14
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
-
1
,
26
,
84
,
85
,
86
,
-
1
,
31
,
32
,
33
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
39
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
103
,
47
,
-
1
,
-
1
,
50
,
-
1
,
52
,
-
1
,
-
1
,
55
,
3
,
4
,
5
,
6
,
7
,
-
1
,
-
1
,
10
,
-
1
,
-
1
,
66
,
67
,
68
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
75
,
-
1
,
-
1
,
-
1
,
-
1
,
80
,
81
,
-
1
,
-
1
,
84
,
85
,
86
,
3
,
4
,
5
,
6
,
7
,
-
1
,
-
1
,
10
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
103
,
8
,
9
,
53
,
11
,
12
,
13
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
8
,
9
,
65
,
11
,
12
,
13
,
-
1
,
70
,
71
,
72
,
73
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
82
,
83
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
92
,
-
1
,
-
1
,
40
,
65
,
-
1
,
-
1
,
99
,
-
1
,
70
,
71
,
72
,
73
,
74
,
-
1
,
76
,
77
,
78
,
79
,
-
1
,
-
1
,
82
,
83
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
8
,
9
,
92
,
11
,
12
,
13
,
-
1
,
-
1
,
-
1
,
99
,
-
1
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
-
1
,
27
,
-
1
,
-
1
,
100
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
8
,
9
,
-
1
,
11
,
12
,
13
,
-
1
,
8
,
9
,
-
1
,
11
,
12
,
13
,
-
1
,
-
1
,
-
1
,
-
1
,
8
,
9
,
27
,
11
,
12
,
13
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
30
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
-
1
,
-
1
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
88
,
89
,
90
,
91
,
92
,
93
,
94
-
1
,
-
1
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
-
1
,
-
1
,
-
1
,
89
,
90
,
91
,
92
,
93
,
94
,
95
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
...
...
@@ -940,37 +950,37 @@ static const unsigned char yystos[] =
{
0
,
7
,
14
,
26
,
31
,
32
,
33
,
39
,
47
,
50
,
52
,
55
,
66
,
67
,
68
,
75
,
80
,
81
,
84
,
85
,
86
,
10
2
,
105
,
110
,
111
,
112
,
124
,
125
,
126
,
130
,
13
1
,
132
,
133
,
134
,
135
,
136
,
137
,
141
,
142
,
143
,
14
4
,
145
,
146
,
147
,
153
,
157
,
158
,
159
,
167
,
62
,
86
,
10
3
,
106
,
111
,
112
,
113
,
125
,
126
,
127
,
131
,
13
2
,
133
,
134
,
135
,
136
,
137
,
138
,
142
,
143
,
144
,
14
5
,
146
,
147
,
148
,
155
,
159
,
160
,
161
,
169
,
62
,
7
,
3
,
4
,
5
,
6
,
7
,
10
,
65
,
70
,
71
,
72
,
73
,
74
,
76
,
77
,
78
,
79
,
82
,
83
,
9
1
,
9
8
,
107
,
108
,
107
,
34
,
35
,
93
,
107
,
116
,
117
,
11
8
,
7
,
48
,
7
,
37
,
56
,
58
,
155
,
7
,
7
,
7
,
12
4
,
87
,
87
,
7
,
0
,
97
,
98
,
97
,
49
,
12
4
,
97
,
38
,
119
,
129
,
97
,
97
,
119
,
129
,
97
,
9
7
,
97
,
97
,
97
,
97
,
97
,
97
,
97
,
97
,
97
,
9
7
,
97
,
97
,
97
,
97
,
107
,
98
,
96
,
107
,
96
,
10
7
,
107
,
8
,
9
,
11
,
12
,
13
,
27
,
88
,
89
,
9
0
,
91
,
92
,
93
,
94
,
98
,
30
,
98
,
98
,
48
,
10
1
,
37
,
15
,
7
,
51
,
7
,
7
,
59
,
156
,
48
,
9
8
,
107
,
115
,
98
,
53
,
107
,
7
,
161
,
162
,
69
,
69
,
99
,
107
,
107
,
107
,
107
,
107
,
105
,
106
,
107
,
10
7
,
107
,
107
,
107
,
107
,
107
,
115
,
106
,
107
,
36
,
9
3
,
7
,
114
,
116
,
7
,
113
,
107
,
7
,
127
,
128
,
9
8
,
57
,
114
,
100
,
109
,
99
,
101
,
115
,
54
,
15
,
16
,
99
,
101
,
28
,
29
,
105
,
138
,
139
,
140
,
99
,
25
,
99
,
7
,
99
,
101
,
38
,
101
,
119
,
40
,
88
,
10
1
,
7
,
148
,
149
,
7
,
99
,
101
,
107
,
99
,
7
,
17
,
18
,
19
,
20
,
22
,
16
0
,
160
,
23
,
161
,
106
,
10
7
,
138
,
25
,
30
,
99
,
7
,
7
,
39
,
120
,
107
,
10
7
,
127
,
160
,
99
,
101
,
61
,
103
,
100
,
7
,
163
,
16
4
,
27
,
26
,
50
,
41
,
121
,
30
,
98
,
150
,
60
,
15
2
,
148
,
7
,
160
,
63
,
163
,
165
,
166
,
106
,
42
,
43
,
12
3
,
106
,
3
,
10
,
151
,
98
,
97
,
64
,
24
,
16
5
,
44
,
25
,
99
,
6
,
7
,
154
,
7
,
106
,
7
,
30
,
99
,
101
,
23
,
25
,
45
,
46
,
122
,
7
,
124
,
97
72
,
73
,
74
,
76
,
77
,
78
,
79
,
82
,
83
,
9
2
,
9
9
,
108
,
109
,
108
,
34
,
35
,
94
,
108
,
117
,
118
,
11
9
,
7
,
48
,
7
,
37
,
56
,
58
,
157
,
7
,
7
,
7
,
12
5
,
87
,
87
,
7
,
0
,
98
,
99
,
98
,
49
,
12
5
,
98
,
38
,
120
,
130
,
98
,
98
,
120
,
130
,
98
,
9
8
,
98
,
98
,
98
,
98
,
98
,
98
,
98
,
98
,
98
,
9
8
,
98
,
98
,
98
,
98
,
108
,
99
,
97
,
108
,
97
,
10
8
,
108
,
8
,
9
,
11
,
12
,
13
,
27
,
89
,
90
,
9
1
,
92
,
93
,
94
,
95
,
99
,
30
,
99
,
99
,
48
,
10
2
,
37
,
15
,
7
,
51
,
7
,
7
,
59
,
158
,
48
,
9
9
,
108
,
116
,
99
,
53
,
108
,
7
,
163
,
164
,
69
,
69
,
100
,
108
,
108
,
108
,
108
,
108
,
106
,
107
,
108
,
10
8
,
108
,
108
,
108
,
108
,
108
,
116
,
107
,
108
,
36
,
9
4
,
7
,
115
,
117
,
7
,
114
,
108
,
7
,
128
,
129
,
9
9
,
57
,
115
,
101
,
110
,
100
,
102
,
116
,
54
,
15
,
16
,
100
,
102
,
28
,
29
,
106
,
139
,
140
,
141
,
100
,
25
,
100
,
7
,
100
,
102
,
38
,
102
,
120
,
40
,
89
,
10
2
,
7
,
149
,
150
,
7
,
100
,
102
,
108
,
100
,
7
,
17
,
18
,
19
,
20
,
22
,
16
2
,
162
,
23
,
163
,
107
,
10
8
,
139
,
25
,
30
,
100
,
7
,
7
,
39
,
121
,
108
,
10
8
,
128
,
162
,
100
,
102
,
61
,
104
,
101
,
7
,
165
,
16
6
,
27
,
26
,
50
,
41
,
122
,
30
,
99
,
151
,
60
,
15
4
,
149
,
7
,
162
,
63
,
165
,
167
,
168
,
107
,
42
,
43
,
12
4
,
107
,
3
,
88
,
152
,
99
,
98
,
64
,
24
,
16
7
,
44
,
25
,
100
,
10
,
153
,
7
,
156
,
7
,
10
7
,
7
,
30
,
6
,
100
,
102
,
23
,
25
,
45
,
46
,
123
,
7
,
125
,
98
};
#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
...
...
@@ -1582,262 +1592,262 @@ yyreduce:
switch
(
yyn
)
{
case
24
:
#line 15
6
"pars0grm.y"
#line 15
7
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
25
:
#line 15
8
"pars0grm.y"
#line 15
9
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
break
;
case
26
:
#line 16
2
"pars0grm.y"
#line 16
3
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
27
:
#line 16
4
"pars0grm.y"
#line 16
5
"pars0grm.y"
{
yyval
=
pars_func
(
yyvsp
[
-
3
],
yyvsp
[
-
1
]);
;}
break
;
case
28
:
#line 16
5
"pars0grm.y"
#line 16
6
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
29
:
#line 16
6
"pars0grm.y"
#line 16
7
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
30
:
#line 16
7
"pars0grm.y"
#line 16
8
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
31
:
#line 16
8
"pars0grm.y"
#line 16
9
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
32
:
#line 1
69
"pars0grm.y"
#line 1
70
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];;}
break
;
case
33
:
#line 17
0
"pars0grm.y"
#line 17
1
"pars0grm.y"
{
yyval
=
pars_op
(
'+'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
34
:
#line 17
1
"pars0grm.y"
#line 17
2
"pars0grm.y"
{
yyval
=
pars_op
(
'-'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
35
:
#line 17
2
"pars0grm.y"
#line 17
3
"pars0grm.y"
{
yyval
=
pars_op
(
'*'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
36
:
#line 17
3
"pars0grm.y"
#line 17
4
"pars0grm.y"
{
yyval
=
pars_op
(
'/'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
37
:
#line 17
4
"pars0grm.y"
#line 17
5
"pars0grm.y"
{
yyval
=
pars_op
(
'-'
,
yyvsp
[
0
],
NULL
);
;}
break
;
case
38
:
#line 17
5
"pars0grm.y"
#line 17
6
"pars0grm.y"
{
yyval
=
yyvsp
[
-
1
];
;}
break
;
case
39
:
#line 17
6
"pars0grm.y"
#line 17
7
"pars0grm.y"
{
yyval
=
pars_op
(
'='
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
40
:
#line 17
7
"pars0grm.y"
#line 17
8
"pars0grm.y"
{
yyval
=
pars_op
(
'<'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
41
:
#line 17
8
"pars0grm.y"
#line 17
9
"pars0grm.y"
{
yyval
=
pars_op
(
'>'
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
42
:
#line 1
79
"pars0grm.y"
#line 1
80
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_GE_TOKEN
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
43
:
#line 18
0
"pars0grm.y"
#line 18
1
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_LE_TOKEN
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
44
:
#line 18
1
"pars0grm.y"
#line 18
2
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_NE_TOKEN
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
45
:
#line 18
2
"pars0grm.y"
#line 18
3
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_AND_TOKEN
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
46
:
#line 18
3
"pars0grm.y"
#line 18
4
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_OR_TOKEN
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
47
:
#line 18
4
"pars0grm.y"
#line 18
5
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_NOT_TOKEN
,
yyvsp
[
0
],
NULL
);
;}
break
;
case
48
:
#line 18
6
"pars0grm.y"
#line 18
7
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_NOTFOUND_TOKEN
,
yyvsp
[
-
2
],
NULL
);
;}
break
;
case
49
:
#line 18
8
"pars0grm.y"
#line 18
9
"pars0grm.y"
{
yyval
=
pars_op
(
PARS_NOTFOUND_TOKEN
,
yyvsp
[
-
2
],
NULL
);
;}
break
;
case
50
:
#line 19
2
"pars0grm.y"
#line 19
3
"pars0grm.y"
{
yyval
=
&
pars_to_char_token
;
;}
break
;
case
51
:
#line 19
3
"pars0grm.y"
#line 19
4
"pars0grm.y"
{
yyval
=
&
pars_to_number_token
;
;}
break
;
case
52
:
#line 19
4
"pars0grm.y"
#line 19
5
"pars0grm.y"
{
yyval
=
&
pars_to_binary_token
;
;}
break
;
case
53
:
#line 19
6
"pars0grm.y"
#line 19
7
"pars0grm.y"
{
yyval
=
&
pars_binary_to_number_token
;
;}
break
;
case
54
:
#line 19
7
"pars0grm.y"
#line 19
8
"pars0grm.y"
{
yyval
=
&
pars_substr_token
;
;}
break
;
case
55
:
#line 19
8
"pars0grm.y"
#line 19
9
"pars0grm.y"
{
yyval
=
&
pars_concat_token
;
;}
break
;
case
56
:
#line
199
"pars0grm.y"
#line
200
"pars0grm.y"
{
yyval
=
&
pars_instr_token
;
;}
break
;
case
57
:
#line 20
0
"pars0grm.y"
#line 20
1
"pars0grm.y"
{
yyval
=
&
pars_length_token
;
;}
break
;
case
58
:
#line 20
1
"pars0grm.y"
#line 20
2
"pars0grm.y"
{
yyval
=
&
pars_sysdate_token
;
;}
break
;
case
59
:
#line 20
2
"pars0grm.y"
#line 20
3
"pars0grm.y"
{
yyval
=
&
pars_rnd_token
;
;}
break
;
case
60
:
#line 20
3
"pars0grm.y"
#line 20
4
"pars0grm.y"
{
yyval
=
&
pars_rnd_str_token
;
;}
break
;
case
64
:
#line 21
4
"pars0grm.y"
#line 21
5
"pars0grm.y"
{
yyval
=
pars_stored_procedure_call
(
yyvsp
[
-
4
]);
;}
break
;
case
65
:
#line 2
19
"pars0grm.y"
#line 2
20
"pars0grm.y"
{
yyval
=
pars_procedure_call
(
yyvsp
[
-
3
],
yyvsp
[
-
1
]);
;}
break
;
case
66
:
#line 22
3
"pars0grm.y"
#line 22
4
"pars0grm.y"
{
yyval
=
&
pars_replstr_token
;
;}
break
;
case
67
:
#line 22
4
"pars0grm.y"
#line 22
5
"pars0grm.y"
{
yyval
=
&
pars_printf_token
;
;}
break
;
case
68
:
#line 22
5
"pars0grm.y"
#line 22
6
"pars0grm.y"
{
yyval
=
&
pars_assert_token
;
;}
break
;
case
69
:
#line 2
29
"pars0grm.y"
#line 2
30
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
70
:
#line 23
1
"pars0grm.y"
#line 23
2
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
71
:
#line 23
5
"pars0grm.y"
#line 23
6
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
72
:
#line 23
6
"pars0grm.y"
#line 23
7
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
73
:
#line 23
8
"pars0grm.y"
#line 23
9
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
74
:
#line 24
2
"pars0grm.y"
#line 24
3
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
75
:
#line 24
3
"pars0grm.y"
#line 24
4
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);;}
break
;
case
76
:
#line 24
4
"pars0grm.y"
#line 24
5
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
77
:
#line 24
8
"pars0grm.y"
#line 24
9
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
78
:
#line 25
0
"pars0grm.y"
#line 25
1
"pars0grm.y"
{
yyval
=
pars_func
(
&
pars_count_token
,
que_node_list_add_last
(
NULL
,
sym_tab_add_int_lit
(
...
...
@@ -1845,7 +1855,7 @@ yyreduce:
break
;
case
79
:
#line 25
5
"pars0grm.y"
#line 25
6
"pars0grm.y"
{
yyval
=
pars_func
(
&
pars_count_token
,
que_node_list_add_last
(
NULL
,
pars_func
(
&
pars_distinct_token
,
...
...
@@ -1854,409 +1864,420 @@ yyreduce:
break
;
case
80
:
#line 26
1
"pars0grm.y"
#line 26
2
"pars0grm.y"
{
yyval
=
pars_func
(
&
pars_sum_token
,
que_node_list_add_last
(
NULL
,
yyvsp
[
-
1
]));
;}
break
;
case
81
:
#line 26
7
"pars0grm.y"
#line 26
8
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
82
:
#line 26
8
"pars0grm.y"
#line 26
9
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
83
:
#line 27
0
"pars0grm.y"
#line 27
1
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
84
:
#line 27
4
"pars0grm.y"
#line 27
5
"pars0grm.y"
{
yyval
=
pars_select_list
(
&
pars_star_denoter
,
NULL
);
;}
break
;
case
85
:
#line 27
7
"pars0grm.y"
#line 27
8
"pars0grm.y"
{
yyval
=
pars_select_list
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
86
:
#line 27
8
"pars0grm.y"
#line 27
9
"pars0grm.y"
{
yyval
=
pars_select_list
(
yyvsp
[
0
],
NULL
);
;}
break
;
case
87
:
#line 28
2
"pars0grm.y"
#line 28
3
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
88
:
#line 28
3
"pars0grm.y"
#line 28
4
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
89
:
#line 28
7
"pars0grm.y"
#line 28
8
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
90
:
#line 2
89
"pars0grm.y"
#line 2
90
"pars0grm.y"
{
yyval
=
&
pars_update_token
;
;}
break
;
case
91
:
#line 29
3
"pars0grm.y"
#line 29
4
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
92
:
#line 29
5
"pars0grm.y"
#line 29
6
"pars0grm.y"
{
yyval
=
&
pars_consistent_token
;
;}
break
;
case
93
:
#line
299
"pars0grm.y"
#line
300
"pars0grm.y"
{
yyval
=
&
pars_asc_token
;
;}
break
;
case
94
:
#line 30
0
"pars0grm.y"
#line 30
1
"pars0grm.y"
{
yyval
=
&
pars_asc_token
;
;}
break
;
case
95
:
#line 30
1
"pars0grm.y"
#line 30
2
"pars0grm.y"
{
yyval
=
&
pars_desc_token
;
;}
break
;
case
96
:
#line 30
5
"pars0grm.y"
#line 30
6
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
97
:
#line 30
7
"pars0grm.y"
#line 30
8
"pars0grm.y"
{
yyval
=
pars_order_by
(
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
break
;
case
98
:
#line 31
6
"pars0grm.y"
#line 31
7
"pars0grm.y"
{
yyval
=
pars_select_statement
(
yyvsp
[
-
6
],
yyvsp
[
-
4
],
yyvsp
[
-
3
],
yyvsp
[
-
2
],
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
break
;
case
99
:
#line 32
2
"pars0grm.y"
#line 32
3
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
100
:
#line 32
7
"pars0grm.y"
#line 32
8
"pars0grm.y"
{
yyval
=
pars_insert_statement
(
yyvsp
[
-
4
],
yyvsp
[
-
1
],
NULL
);
;}
break
;
case
101
:
#line 3
29
"pars0grm.y"
#line 3
30
"pars0grm.y"
{
yyval
=
pars_insert_statement
(
yyvsp
[
-
1
],
NULL
,
yyvsp
[
0
]);
;}
break
;
case
102
:
#line 33
3
"pars0grm.y"
#line 33
4
"pars0grm.y"
{
yyval
=
pars_column_assignment
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
103
:
#line 33
7
"pars0grm.y"
#line 33
8
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
104
:
#line 3
39
"pars0grm.y"
#line 3
40
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
105
:
#line 34
5
"pars0grm.y"
#line 34
6
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
106
:
#line 35
1
"pars0grm.y"
#line 35
2
"pars0grm.y"
{
yyval
=
pars_update_statement_start
(
FALSE
,
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
107
:
#line 35
7
"pars0grm.y"
#line 35
8
"pars0grm.y"
{
yyval
=
pars_update_statement
(
yyvsp
[
-
1
],
NULL
,
yyvsp
[
0
]);
;}
break
;
case
108
:
#line 36
2
"pars0grm.y"
#line 36
3
"pars0grm.y"
{
yyval
=
pars_update_statement
(
yyvsp
[
-
1
],
yyvsp
[
0
],
NULL
);
;}
break
;
case
109
:
#line 36
7
"pars0grm.y"
#line 36
8
"pars0grm.y"
{
yyval
=
pars_update_statement_start
(
TRUE
,
yyvsp
[
0
],
NULL
);
;}
break
;
case
110
:
#line 37
3
"pars0grm.y"
#line 37
4
"pars0grm.y"
{
yyval
=
pars_update_statement
(
yyvsp
[
-
1
],
NULL
,
yyvsp
[
0
]);
;}
break
;
case
111
:
#line 37
8
"pars0grm.y"
#line 37
9
"pars0grm.y"
{
yyval
=
pars_update_statement
(
yyvsp
[
-
1
],
yyvsp
[
0
],
NULL
);
;}
break
;
case
112
:
#line 38
3
"pars0grm.y"
#line 38
4
"pars0grm.y"
{
yyval
=
pars_row_printf_statement
(
yyvsp
[
0
]);
;}
break
;
case
113
:
#line 38
8
"pars0grm.y"
#line 38
9
"pars0grm.y"
{
yyval
=
pars_assignment_statement
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
114
:
#line 39
4
"pars0grm.y"
#line 39
5
"pars0grm.y"
{
yyval
=
pars_elsif_element
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
115
:
#line 39
8
"pars0grm.y"
#line 39
9
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
116
:
#line 40
0
"pars0grm.y"
#line 40
1
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
break
;
case
117
:
#line 40
4
"pars0grm.y"
#line 40
5
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
118
:
#line 40
6
"pars0grm.y"
#line 40
7
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
119
:
#line 40
7
"pars0grm.y"
#line 40
8
"pars0grm.y"
{
yyval
=
yyvsp
[
0
];
;}
break
;
case
120
:
#line 41
4
"pars0grm.y"
#line 41
5
"pars0grm.y"
{
yyval
=
pars_if_statement
(
yyvsp
[
-
5
],
yyvsp
[
-
3
],
yyvsp
[
-
2
]);
;}
break
;
case
121
:
#line 42
0
"pars0grm.y"
#line 42
1
"pars0grm.y"
{
yyval
=
pars_while_statement
(
yyvsp
[
-
4
],
yyvsp
[
-
2
]);
;}
break
;
case
122
:
#line 42
8
"pars0grm.y"
#line 42
9
"pars0grm.y"
{
yyval
=
pars_for_statement
(
yyvsp
[
-
8
],
yyvsp
[
-
6
],
yyvsp
[
-
4
],
yyvsp
[
-
2
]);
;}
break
;
case
123
:
#line 43
2
"pars0grm.y"
#line 43
3
"pars0grm.y"
{
yyval
=
pars_return_statement
();
;}
break
;
case
124
:
#line 43
7
"pars0grm.y"
#line 43
8
"pars0grm.y"
{
yyval
=
pars_open_statement
(
ROW_SEL_OPEN_CURSOR
,
yyvsp
[
0
]);
;}
break
;
case
125
:
#line 44
3
"pars0grm.y"
#line 44
4
"pars0grm.y"
{
yyval
=
pars_open_statement
(
ROW_SEL_CLOSE_CURSOR
,
yyvsp
[
0
]);
;}
break
;
case
126
:
#line 4
49
"pars0grm.y"
#line 4
50
"pars0grm.y"
{
yyval
=
pars_fetch_statement
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
127
:
#line 45
4
"pars0grm.y"
{
yyval
=
pars_column_def
(
yyvsp
[
-
3
],
yyvsp
[
-
2
],
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
#line 45
5
"pars0grm.y"
{
yyval
=
pars_column_def
(
yyvsp
[
-
4
],
yyvsp
[
-
3
],
yyvsp
[
-
2
],
yyvsp
[
-
1
],
yyvsp
[
0
]);
;}
break
;
case
128
:
#line 45
8
"pars0grm.y"
#line 45
9
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
129
:
#line 46
0
"pars0grm.y"
#line 46
1
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
130
:
#line 46
4
"pars0grm.y"
#line 46
5
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
131
:
#line 46
6
"pars0grm.y"
#line 46
7
"pars0grm.y"
{
yyval
=
yyvsp
[
-
1
];
;}
break
;
case
132
:
#line 47
0
"pars0grm.y"
#line 47
1
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
133
:
#line 47
2
"pars0grm.y"
#line 47
3
"pars0grm.y"
{
yyval
=
&
pars_int_token
;
/* pass any non-NULL pointer */
;}
break
;
case
134
:
#line 47
7
"pars0grm.y"
#line 47
8
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
135
:
#line 4
79
"pars0grm.y"
#line 4
80
"pars0grm.y"
{
yyval
=
&
pars_int_token
;
/* pass any non-NULL pointer */
;}
break
;
case
136
:
#line 48
6
"pars0grm.y"
{
yyval
=
pars_create_table
(
yyvsp
[
-
4
],
yyvsp
[
-
2
],
yyvsp
[
0
])
;
;}
#line 48
5
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
137
:
#line 490 "pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
#line 487 "pars0grm.y"
{
yyval
=
&
pars_int_token
;
/* pass any non-NULL pointer */
;}
break
;
case
138
:
#line 49
2
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
#line 49
4
"pars0grm.y"
{
yyval
=
pars_create_table
(
yyvsp
[
-
4
],
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
139
:
#line 49
6
"pars0grm.y"
{
yyval
=
NULL
;
;}
#line 49
8
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
])
;
;}
break
;
case
140
:
#line
497
"pars0grm.y"
{
yyval
=
&
pars_unique_token
;
;}
#line
500
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
])
;
;}
break
;
case
141
:
#line 50
1
"pars0grm.y"
#line 50
4
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
142
:
#line 50
2
"pars0grm.y"
{
yyval
=
&
pars_
clustered
_token
;
;}
#line 50
5
"pars0grm.y"
{
yyval
=
&
pars_
unique
_token
;
;}
break
;
case
143
:
#line 509 "pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
144
:
#line 510 "pars0grm.y"
{
yyval
=
&
pars_clustered_token
;
;}
break
;
case
145
:
#line 518 "pars0grm.y"
{
yyval
=
pars_create_index
(
yyvsp
[
-
8
],
yyvsp
[
-
7
],
yyvsp
[
-
5
],
yyvsp
[
-
3
],
yyvsp
[
-
1
]);
;}
break
;
case
14
4
:
#line 5
15
"pars0grm.y"
case
14
6
:
#line 5
23
"pars0grm.y"
{
yyval
=
pars_commit_statement
();
;}
break
;
case
14
5
:
#line 52
0
"pars0grm.y"
case
14
7
:
#line 52
8
"pars0grm.y"
{
yyval
=
pars_rollback_statement
();
;}
break
;
case
14
6
:
#line 5
24
"pars0grm.y"
case
14
8
:
#line 5
32
"pars0grm.y"
{
yyval
=
&
pars_int_token
;
;}
break
;
case
14
7
:
#line 5
25
"pars0grm.y"
case
14
9
:
#line 5
33
"pars0grm.y"
{
yyval
=
&
pars_int_token
;
;}
break
;
case
1
48
:
#line 5
26
"pars0grm.y"
case
1
50
:
#line 5
34
"pars0grm.y"
{
yyval
=
&
pars_char_token
;
;}
break
;
case
1
49
:
#line 5
27
"pars0grm.y"
case
1
51
:
#line 5
35
"pars0grm.y"
{
yyval
=
&
pars_binary_token
;
;}
break
;
case
15
0
:
#line 5
28
"pars0grm.y"
case
15
2
:
#line 5
36
"pars0grm.y"
{
yyval
=
&
pars_blob_token
;
;}
break
;
case
15
1
:
#line 5
33
"pars0grm.y"
case
15
3
:
#line 5
41
"pars0grm.y"
{
yyval
=
pars_parameter_declaration
(
yyvsp
[
-
2
],
PARS_INPUT
,
yyvsp
[
0
]);
;}
break
;
case
15
2
:
#line 5
36
"pars0grm.y"
case
15
4
:
#line 5
44
"pars0grm.y"
{
yyval
=
pars_parameter_declaration
(
yyvsp
[
-
2
],
PARS_OUTPUT
,
yyvsp
[
0
]);
;}
break
;
case
15
3
:
#line 54
1
"pars0grm.y"
case
15
5
:
#line 54
9
"pars0grm.y"
{
yyval
=
NULL
;
;}
break
;
case
15
4
:
#line 5
42
"pars0grm.y"
case
15
6
:
#line 5
50
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
NULL
,
yyvsp
[
0
]);
;}
break
;
case
15
5
:
#line 5
44
"pars0grm.y"
case
15
7
:
#line 5
52
"pars0grm.y"
{
yyval
=
que_node_list_add_last
(
yyvsp
[
-
2
],
yyvsp
[
0
]);
;}
break
;
case
15
6
:
#line 5
49
"pars0grm.y"
case
15
8
:
#line 5
57
"pars0grm.y"
{
yyval
=
pars_variable_declaration
(
yyvsp
[
-
2
],
yyvsp
[
-
1
]);
;}
break
;
case
16
0
:
#line 56
1
"pars0grm.y"
case
16
2
:
#line 56
9
"pars0grm.y"
{
yyval
=
pars_cursor_declaration
(
yyvsp
[
-
3
],
yyvsp
[
-
1
]);
;}
break
;
case
16
4
:
#line 5
77
"pars0grm.y"
case
16
6
:
#line 5
85
"pars0grm.y"
{
yyval
=
pars_procedure_definition
(
yyvsp
[
-
9
],
yyvsp
[
-
7
],
yyvsp
[
-
1
]);
;}
break
;
...
...
@@ -2265,7 +2286,7 @@ yyreduce:
}
/* Line 1010 of yacc.c. */
#line 22
69
"pars0grm.tab.c"
#line 22
90
"pars0grm.tab.c"
yyvsp
-=
yylen
;
yyssp
-=
yylen
;
...
...
@@ -2490,6 +2511,6 @@ yyreturn:
}
#line 58
1
"pars0grm.y"
#line 58
9
"pars0grm.y"
pars/pars0grm.h
View file @
f015b825
...
...
@@ -114,7 +114,8 @@
PARS_COMMIT_TOKEN
=
340
,
PARS_ROLLBACK_TOKEN
=
341
,
PARS_WORK_TOKEN
=
342
,
NEG
=
343
PARS_UNSIGNED_TOKEN
=
343
,
NEG
=
344
};
#endif
#define PARS_INT_LIT 258
...
...
@@ -202,7 +203,8 @@
#define PARS_COMMIT_TOKEN 340
#define PARS_ROLLBACK_TOKEN 341
#define PARS_WORK_TOKEN 342
#define NEG 343
#define PARS_UNSIGNED_TOKEN 343
#define NEG 344
...
...
pars/pars0grm.y
View file @
f015b825
...
...
@@ -115,6 +115,7 @@ yylex(void);
%token PARS_COMMIT_TOKEN
%token PARS_ROLLBACK_TOKEN
%token PARS_WORK_TOKEN
%token PARS_UNSIGNED_TOKEN
%left PARS_AND_TOKEN PARS_OR_TOKEN
%left PARS_NOT_TOKEN
...
...
@@ -450,8 +451,8 @@ fetch_statement:
;
column_def:
PARS_ID_TOKEN type_name opt_column_len opt_not_null
{ $$ = pars_column_def($1, $2, $3, $4); }
PARS_ID_TOKEN type_name opt_column_len opt_
unsigned opt_
not_null
{ $$ = pars_column_def($1, $2, $3, $4
, $5
); }
;
column_def_list:
...
...
@@ -466,6 +467,13 @@ opt_column_len:
{ $$ = $2; }
;
opt_unsigned:
/* Nothing */ { $$ = NULL; }
| PARS_UNSIGNED_TOKEN
{ $$ = &pars_int_token;
/* pass any non-NULL pointer */ }
;
opt_not_null:
/* Nothing */ { $$ = NULL; }
| PARS_NOT_TOKEN PARS_NULL_LIT
...
...
pars/pars0lex.l
View file @
f015b825
...
...
@@ -462,6 +462,10 @@ In the state 'quoted', only two actions are possible (defined below). */
return(PARS_WORK_TOKEN);
}
"UNSIGNED" {
return(PARS_UNSIGNED_TOKEN);
}
{ID} {
yylval = sym_tab_add_id(pars_sym_tab_global,
(byte*)yytext,
...
...
pars/pars0pars.c
View file @
f015b825
...
...
@@ -1085,6 +1085,8 @@ pars_set_dfield_type(
pars_res_word_t
*
type
,
/* in: pointer to a type
token */
ulint
len
,
/* in: length, or 0 */
ibool
is_unsigned
,
/* in: if TRUE, column is
UNSIGNED. */
ibool
is_not_null
)
/* in: if TRUE, column is
NOT NULL. */
{
...
...
@@ -1094,6 +1096,10 @@ pars_set_dfield_type(
flags
|=
DATA_NOT_NULL
;
}
if
(
is_unsigned
)
{
flags
|=
DATA_UNSIGNED
;
}
if
(
type
==
&
pars_int_token
)
{
if
(
len
!=
0
)
{
ut_error
;
...
...
@@ -1158,7 +1164,7 @@ pars_variable_declaration(
node
->
param_type
=
PARS_NOT_PARAM
;
pars_set_dfield_type
(
que_node_get_val
(
node
),
type
,
0
,
FALSE
);
pars_set_dfield_type
(
que_node_get_val
(
node
),
type
,
0
,
FALSE
,
FALSE
);
return
(
node
);
}
...
...
@@ -1529,6 +1535,8 @@ pars_column_def(
pars_res_word_t
*
type
,
/* in: data type */
sym_node_t
*
len
,
/* in: length of column, or
NULL */
void
*
is_unsigned
,
/* in: if not NULL, column
is of type UNSIGNED. */
void
*
is_not_null
)
/* in: if not NULL, column
is of type NOT NULL. */
{
...
...
@@ -1541,7 +1549,7 @@ pars_column_def(
}
pars_set_dfield_type
(
que_node_get_val
(
sym_node
),
type
,
len2
,
is_not_null
!=
NULL
);
is_
unsigned
!=
NULL
,
is_
not_null
!=
NULL
);
return
(
sym_node
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment