4
|
1 文法
|
|
2
|
|
3 0 $accept: unit "end of file"
|
|
4
|
|
5 1 unit: states
|
|
6 2 | unit states
|
|
7
|
|
8 3 states: statement "\n"
|
|
9 4 | "\n"
|
|
10
|
|
11 5 statement: "end"
|
|
12 6 | assign
|
|
13 7 | "if" comp_expr "then"
|
|
14 8 | "else"
|
|
15 9 | "endif"
|
|
16 10 | "for" assign "to" expr "step" expr
|
|
17 11 | "for" assign "to" expr
|
|
18 12 | "next"
|
|
19 13 | "while" comp_expr
|
|
20 14 | "wend"
|
|
21 15 | "print" args
|
|
22 16 | error
|
|
23
|
|
24 17 assign: value '=' expr
|
|
25
|
|
26 18 comp_expr: expr "==" expr
|
|
27 19 | expr "!=" expr
|
|
28 20 | expr '>' expr
|
|
29 21 | expr ">=" expr
|
|
30 22 | expr '<' expr
|
|
31 23 | expr "<=" expr
|
|
32
|
|
33 24 expr: expr '-' expr
|
|
34 25 | expr '+' expr
|
|
35 26 | expr '*' expr
|
|
36 27 | expr '/' expr
|
|
37 28 | expr '%' expr
|
|
38 29 | '-' expr
|
|
39 30 | '(' expr ')'
|
|
40 31 | value
|
|
41 32 | "ival"
|
|
42 33 | "rand" '(' expr ')'
|
|
43
|
|
44 34 value: "identifier"
|
|
45
|
|
46 35 args: expr
|
|
47 36 | args ',' expr
|
|
48
|
|
49
|
|
50 出現位置の規則による終端
|
|
51
|
|
52 "end of file" (0) 0
|
|
53 '%' (37) 28
|
|
54 '(' (40) 30 33
|
|
55 ')' (41) 30 33
|
|
56 '*' (42) 26
|
|
57 '+' (43) 25
|
|
58 ',' (44) 36
|
|
59 '-' (45) 24 29
|
|
60 '/' (47) 27
|
|
61 '<' (60) 22
|
|
62 '=' (61) 17
|
|
63 '>' (62) 20
|
|
64 error (256) 16
|
|
65 "ival" (258) 32
|
|
66 "identifier" (259) 34
|
|
67 "==" (260) 18
|
|
68 "!=" (261) 19
|
|
69 ">=" (262) 21
|
|
70 "<=" (263) 23
|
|
71 "\n" (264) 3 4
|
|
72 "if" (265) 7
|
|
73 "then" (266) 7
|
|
74 "else" (267) 8
|
|
75 "endif" (268) 9
|
|
76 "for" (269) 10 11
|
|
77 "to" (270) 10 11
|
|
78 "next" (271) 12
|
|
79 "while" (272) 13
|
|
80 "wend" (273) 14
|
|
81 "end" (274) 5
|
|
82 "rand" (275) 33
|
|
83 "print" (276) 15
|
|
84 NEG (277)
|
|
85 "step" (278) 10
|
|
86
|
|
87
|
|
88 出現位置の規則による非終端
|
|
89
|
|
90 $accept (35)
|
|
91 左辺: 0
|
|
92 unit (36)
|
|
93 左辺: 1 2, 右辺: 0 2
|
|
94 states (37)
|
|
95 左辺: 3 4, 右辺: 1 2
|
|
96 statement (38)
|
|
97 左辺: 5 6 7 8 9 10 11 12 13 14 15 16, 右辺: 3
|
|
98 assign (39)
|
|
99 左辺: 17, 右辺: 6 10 11
|
|
100 comp_expr (40)
|
|
101 左辺: 18 19 20 21 22 23, 右辺: 7 13
|
|
102 expr (41)
|
|
103 左辺: 24 25 26 27 28 29 30 31 32 33, 右辺: 10 11 17 18 19 20
|
|
104 21 22 23 24 25 26 27 28 29 30 33 35 36
|
|
105 value (42)
|
|
106 左辺: 34, 右辺: 17 31
|
|
107 args (43)
|
|
108 左辺: 35 36, 右辺: 15 36
|
|
109
|
|
110
|
|
111 状態 0
|
|
112
|
|
113 0 $accept: . unit "end of file"
|
|
114 1 unit: . states
|
|
115 2 | . unit states
|
|
116 3 states: . statement "\n"
|
|
117 4 | . "\n"
|
|
118 5 statement: . "end"
|
|
119 6 | . assign
|
|
120 7 | . "if" comp_expr "then"
|
|
121 8 | . "else"
|
|
122 9 | . "endif"
|
|
123 10 | . "for" assign "to" expr "step" expr
|
|
124 11 | . "for" assign "to" expr
|
|
125 12 | . "next"
|
|
126 13 | . "while" comp_expr
|
|
127 14 | . "wend"
|
|
128 15 | . "print" args
|
|
129 16 | . error
|
|
130 17 assign: . value '=' expr
|
|
131 34 value: . "identifier"
|
|
132
|
|
133 error shift, and go to state 1
|
|
134 "identifier" shift, and go to state 2
|
|
135 "\n" shift, and go to state 3
|
|
136 "if" shift, and go to state 4
|
|
137 "else" shift, and go to state 5
|
|
138 "endif" shift, and go to state 6
|
|
139 "for" shift, and go to state 7
|
|
140 "next" shift, and go to state 8
|
|
141 "while" shift, and go to state 9
|
|
142 "wend" shift, and go to state 10
|
|
143 "end" shift, and go to state 11
|
|
144 "print" shift, and go to state 12
|
|
145
|
|
146 unit go to state 13
|
|
147 states go to state 14
|
|
148 statement go to state 15
|
|
149 assign go to state 16
|
|
150 value go to state 17
|
|
151
|
|
152
|
|
153 状態 1
|
|
154
|
|
155 16 statement: error .
|
|
156
|
|
157 $default reduce using rule 16 (statement)
|
|
158
|
|
159
|
|
160 状態 2
|
|
161
|
|
162 34 value: "identifier" .
|
|
163
|
|
164 $default reduce using rule 34 (value)
|
|
165
|
|
166
|
|
167 状態 3
|
|
168
|
|
169 4 states: "\n" .
|
|
170
|
|
171 $default reduce using rule 4 (states)
|
|
172
|
|
173
|
|
174 状態 4
|
|
175
|
|
176 7 statement: "if" . comp_expr "then"
|
|
177 18 comp_expr: . expr "==" expr
|
|
178 19 | . expr "!=" expr
|
|
179 20 | . expr '>' expr
|
|
180 21 | . expr ">=" expr
|
|
181 22 | . expr '<' expr
|
|
182 23 | . expr "<=" expr
|
|
183 24 expr: . expr '-' expr
|
|
184 25 | . expr '+' expr
|
|
185 26 | . expr '*' expr
|
|
186 27 | . expr '/' expr
|
|
187 28 | . expr '%' expr
|
|
188 29 | . '-' expr
|
|
189 30 | . '(' expr ')'
|
|
190 31 | . value
|
|
191 32 | . "ival"
|
|
192 33 | . "rand" '(' expr ')'
|
|
193 34 value: . "identifier"
|
|
194
|
|
195 "ival" shift, and go to state 18
|
|
196 "identifier" shift, and go to state 2
|
|
197 "rand" shift, and go to state 19
|
|
198 '-' shift, and go to state 20
|
|
199 '(' shift, and go to state 21
|
|
200
|
|
201 comp_expr go to state 22
|
|
202 expr go to state 23
|
|
203 value go to state 24
|
|
204
|
|
205
|
|
206 状態 5
|
|
207
|
|
208 8 statement: "else" .
|
|
209
|
|
210 $default reduce using rule 8 (statement)
|
|
211
|
|
212
|
|
213 状態 6
|
|
214
|
|
215 9 statement: "endif" .
|
|
216
|
|
217 $default reduce using rule 9 (statement)
|
|
218
|
|
219
|
|
220 状態 7
|
|
221
|
|
222 10 statement: "for" . assign "to" expr "step" expr
|
|
223 11 | "for" . assign "to" expr
|
|
224 17 assign: . value '=' expr
|
|
225 34 value: . "identifier"
|
|
226
|
|
227 "identifier" shift, and go to state 2
|
|
228
|
|
229 assign go to state 25
|
|
230 value go to state 17
|
|
231
|
|
232
|
|
233 状態 8
|
|
234
|
|
235 12 statement: "next" .
|
|
236
|
|
237 $default reduce using rule 12 (statement)
|
|
238
|
|
239
|
|
240 状態 9
|
|
241
|
|
242 13 statement: "while" . comp_expr
|
|
243 18 comp_expr: . expr "==" expr
|
|
244 19 | . expr "!=" expr
|
|
245 20 | . expr '>' expr
|
|
246 21 | . expr ">=" expr
|
|
247 22 | . expr '<' expr
|
|
248 23 | . expr "<=" expr
|
|
249 24 expr: . expr '-' expr
|
|
250 25 | . expr '+' expr
|
|
251 26 | . expr '*' expr
|
|
252 27 | . expr '/' expr
|
|
253 28 | . expr '%' expr
|
|
254 29 | . '-' expr
|
|
255 30 | . '(' expr ')'
|
|
256 31 | . value
|
|
257 32 | . "ival"
|
|
258 33 | . "rand" '(' expr ')'
|
|
259 34 value: . "identifier"
|
|
260
|
|
261 "ival" shift, and go to state 18
|
|
262 "identifier" shift, and go to state 2
|
|
263 "rand" shift, and go to state 19
|
|
264 '-' shift, and go to state 20
|
|
265 '(' shift, and go to state 21
|
|
266
|
|
267 comp_expr go to state 26
|
|
268 expr go to state 23
|
|
269 value go to state 24
|
|
270
|
|
271
|
|
272 状態 10
|
|
273
|
|
274 14 statement: "wend" .
|
|
275
|
|
276 $default reduce using rule 14 (statement)
|
|
277
|
|
278
|
|
279 状態 11
|
|
280
|
|
281 5 statement: "end" .
|
|
282
|
|
283 $default reduce using rule 5 (statement)
|
|
284
|
|
285
|
|
286 状態 12
|
|
287
|
|
288 15 statement: "print" . args
|
|
289 24 expr: . expr '-' expr
|
|
290 25 | . expr '+' expr
|
|
291 26 | . expr '*' expr
|
|
292 27 | . expr '/' expr
|
|
293 28 | . expr '%' expr
|
|
294 29 | . '-' expr
|
|
295 30 | . '(' expr ')'
|
|
296 31 | . value
|
|
297 32 | . "ival"
|
|
298 33 | . "rand" '(' expr ')'
|
|
299 34 value: . "identifier"
|
|
300 35 args: . expr
|
|
301 36 | . args ',' expr
|
|
302
|
|
303 "ival" shift, and go to state 18
|
|
304 "identifier" shift, and go to state 2
|
|
305 "rand" shift, and go to state 19
|
|
306 '-' shift, and go to state 20
|
|
307 '(' shift, and go to state 21
|
|
308
|
|
309 expr go to state 27
|
|
310 value go to state 24
|
|
311 args go to state 28
|
|
312
|
|
313
|
|
314 状態 13
|
|
315
|
|
316 0 $accept: unit . "end of file"
|
|
317 2 unit: unit . states
|
|
318 3 states: . statement "\n"
|
|
319 4 | . "\n"
|
|
320 5 statement: . "end"
|
|
321 6 | . assign
|
|
322 7 | . "if" comp_expr "then"
|
|
323 8 | . "else"
|
|
324 9 | . "endif"
|
|
325 10 | . "for" assign "to" expr "step" expr
|
|
326 11 | . "for" assign "to" expr
|
|
327 12 | . "next"
|
|
328 13 | . "while" comp_expr
|
|
329 14 | . "wend"
|
|
330 15 | . "print" args
|
|
331 16 | . error
|
|
332 17 assign: . value '=' expr
|
|
333 34 value: . "identifier"
|
|
334
|
|
335 "end of file" shift, and go to state 29
|
|
336 error shift, and go to state 1
|
|
337 "identifier" shift, and go to state 2
|
|
338 "\n" shift, and go to state 3
|
|
339 "if" shift, and go to state 4
|
|
340 "else" shift, and go to state 5
|
|
341 "endif" shift, and go to state 6
|
|
342 "for" shift, and go to state 7
|
|
343 "next" shift, and go to state 8
|
|
344 "while" shift, and go to state 9
|
|
345 "wend" shift, and go to state 10
|
|
346 "end" shift, and go to state 11
|
|
347 "print" shift, and go to state 12
|
|
348
|
|
349 states go to state 30
|
|
350 statement go to state 15
|
|
351 assign go to state 16
|
|
352 value go to state 17
|
|
353
|
|
354
|
|
355 状態 14
|
|
356
|
|
357 1 unit: states .
|
|
358
|
|
359 $default reduce using rule 1 (unit)
|
|
360
|
|
361
|
|
362 状態 15
|
|
363
|
|
364 3 states: statement . "\n"
|
|
365
|
|
366 "\n" shift, and go to state 31
|
|
367
|
|
368
|
|
369 状態 16
|
|
370
|
|
371 6 statement: assign .
|
|
372
|
|
373 $default reduce using rule 6 (statement)
|
|
374
|
|
375
|
|
376 状態 17
|
|
377
|
|
378 17 assign: value . '=' expr
|
|
379
|
|
380 '=' shift, and go to state 32
|
|
381
|
|
382
|
|
383 状態 18
|
|
384
|
|
385 32 expr: "ival" .
|
|
386
|
|
387 $default reduce using rule 32 (expr)
|
|
388
|
|
389
|
|
390 状態 19
|
|
391
|
|
392 33 expr: "rand" . '(' expr ')'
|
|
393
|
|
394 '(' shift, and go to state 33
|
|
395
|
|
396
|
|
397 状態 20
|
|
398
|
|
399 24 expr: . expr '-' expr
|
|
400 25 | . expr '+' expr
|
|
401 26 | . expr '*' expr
|
|
402 27 | . expr '/' expr
|
|
403 28 | . expr '%' expr
|
|
404 29 | . '-' expr
|
|
405 29 | '-' . expr
|
|
406 30 | . '(' expr ')'
|
|
407 31 | . value
|
|
408 32 | . "ival"
|
|
409 33 | . "rand" '(' expr ')'
|
|
410 34 value: . "identifier"
|
|
411
|
|
412 "ival" shift, and go to state 18
|
|
413 "identifier" shift, and go to state 2
|
|
414 "rand" shift, and go to state 19
|
|
415 '-' shift, and go to state 20
|
|
416 '(' shift, and go to state 21
|
|
417
|
|
418 expr go to state 34
|
|
419 value go to state 24
|
|
420
|
|
421
|
|
422 状態 21
|
|
423
|
|
424 24 expr: . expr '-' expr
|
|
425 25 | . expr '+' expr
|
|
426 26 | . expr '*' expr
|
|
427 27 | . expr '/' expr
|
|
428 28 | . expr '%' expr
|
|
429 29 | . '-' expr
|
|
430 30 | . '(' expr ')'
|
|
431 30 | '(' . expr ')'
|
|
432 31 | . value
|
|
433 32 | . "ival"
|
|
434 33 | . "rand" '(' expr ')'
|
|
435 34 value: . "identifier"
|
|
436
|
|
437 "ival" shift, and go to state 18
|
|
438 "identifier" shift, and go to state 2
|
|
439 "rand" shift, and go to state 19
|
|
440 '-' shift, and go to state 20
|
|
441 '(' shift, and go to state 21
|
|
442
|
|
443 expr go to state 35
|
|
444 value go to state 24
|
|
445
|
|
446
|
|
447 状態 22
|
|
448
|
|
449 7 statement: "if" comp_expr . "then"
|
|
450
|
|
451 "then" shift, and go to state 36
|
|
452
|
|
453
|
|
454 状態 23
|
|
455
|
|
456 18 comp_expr: expr . "==" expr
|
|
457 19 | expr . "!=" expr
|
|
458 20 | expr . '>' expr
|
|
459 21 | expr . ">=" expr
|
|
460 22 | expr . '<' expr
|
|
461 23 | expr . "<=" expr
|
|
462 24 expr: expr . '-' expr
|
|
463 25 | expr . '+' expr
|
|
464 26 | expr . '*' expr
|
|
465 27 | expr . '/' expr
|
|
466 28 | expr . '%' expr
|
|
467
|
|
468 "==" shift, and go to state 37
|
|
469 "!=" shift, and go to state 38
|
|
470 ">=" shift, and go to state 39
|
|
471 "<=" shift, and go to state 40
|
|
472 '+' shift, and go to state 41
|
|
473 '-' shift, and go to state 42
|
|
474 '*' shift, and go to state 43
|
|
475 '/' shift, and go to state 44
|
|
476 '%' shift, and go to state 45
|
|
477 '>' shift, and go to state 46
|
|
478 '<' shift, and go to state 47
|
|
479
|
|
480
|
|
481 状態 24
|
|
482
|
|
483 31 expr: value .
|
|
484
|
|
485 $default reduce using rule 31 (expr)
|
|
486
|
|
487
|
|
488 状態 25
|
|
489
|
|
490 10 statement: "for" assign . "to" expr "step" expr
|
|
491 11 | "for" assign . "to" expr
|
|
492
|
|
493 "to" shift, and go to state 48
|
|
494
|
|
495
|
|
496 状態 26
|
|
497
|
|
498 13 statement: "while" comp_expr .
|
|
499
|
|
500 $default reduce using rule 13 (statement)
|
|
501
|
|
502
|
|
503 状態 27
|
|
504
|
|
505 24 expr: expr . '-' expr
|
|
506 25 | expr . '+' expr
|
|
507 26 | expr . '*' expr
|
|
508 27 | expr . '/' expr
|
|
509 28 | expr . '%' expr
|
|
510 35 args: expr . ["\n", ',']
|
|
511
|
|
512 '+' shift, and go to state 41
|
|
513 '-' shift, and go to state 42
|
|
514 '*' shift, and go to state 43
|
|
515 '/' shift, and go to state 44
|
|
516 '%' shift, and go to state 45
|
|
517
|
|
518 $default reduce using rule 35 (args)
|
|
519
|
|
520
|
|
521 状態 28
|
|
522
|
|
523 15 statement: "print" args . ["\n"]
|
|
524 36 args: args . ',' expr
|
|
525
|
|
526 ',' shift, and go to state 49
|
|
527
|
|
528 $default reduce using rule 15 (statement)
|
|
529
|
|
530
|
|
531 状態 29
|
|
532
|
|
533 0 $accept: unit "end of file" .
|
|
534
|
|
535 $default accept
|
|
536
|
|
537
|
|
538 状態 30
|
|
539
|
|
540 2 unit: unit states .
|
|
541
|
|
542 $default reduce using rule 2 (unit)
|
|
543
|
|
544
|
|
545 状態 31
|
|
546
|
|
547 3 states: statement "\n" .
|
|
548
|
|
549 $default reduce using rule 3 (states)
|
|
550
|
|
551
|
|
552 状態 32
|
|
553
|
|
554 17 assign: value '=' . expr
|
|
555 24 expr: . expr '-' expr
|
|
556 25 | . expr '+' expr
|
|
557 26 | . expr '*' expr
|
|
558 27 | . expr '/' expr
|
|
559 28 | . expr '%' expr
|
|
560 29 | . '-' expr
|
|
561 30 | . '(' expr ')'
|
|
562 31 | . value
|
|
563 32 | . "ival"
|
|
564 33 | . "rand" '(' expr ')'
|
|
565 34 value: . "identifier"
|
|
566
|
|
567 "ival" shift, and go to state 18
|
|
568 "identifier" shift, and go to state 2
|
|
569 "rand" shift, and go to state 19
|
|
570 '-' shift, and go to state 20
|
|
571 '(' shift, and go to state 21
|
|
572
|
|
573 expr go to state 50
|
|
574 value go to state 24
|
|
575
|
|
576
|
|
577 状態 33
|
|
578
|
|
579 24 expr: . expr '-' expr
|
|
580 25 | . expr '+' expr
|
|
581 26 | . expr '*' expr
|
|
582 27 | . expr '/' expr
|
|
583 28 | . expr '%' expr
|
|
584 29 | . '-' expr
|
|
585 30 | . '(' expr ')'
|
|
586 31 | . value
|
|
587 32 | . "ival"
|
|
588 33 | . "rand" '(' expr ')'
|
|
589 33 | "rand" '(' . expr ')'
|
|
590 34 value: . "identifier"
|
|
591
|
|
592 "ival" shift, and go to state 18
|
|
593 "identifier" shift, and go to state 2
|
|
594 "rand" shift, and go to state 19
|
|
595 '-' shift, and go to state 20
|
|
596 '(' shift, and go to state 21
|
|
597
|
|
598 expr go to state 51
|
|
599 value go to state 24
|
|
600
|
|
601
|
|
602 状態 34
|
|
603
|
|
604 24 expr: expr . '-' expr
|
|
605 25 | expr . '+' expr
|
|
606 26 | expr . '*' expr
|
|
607 27 | expr . '/' expr
|
|
608 28 | expr . '%' expr
|
|
609 29 | '-' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
610
|
|
611 $default reduce using rule 29 (expr)
|
|
612
|
|
613 Conflict between rule 29 and token '+' resolved as reduce ('+' < NEG).
|
|
614 Conflict between rule 29 and token '-' resolved as reduce ('-' < NEG).
|
|
615 Conflict between rule 29 and token '*' resolved as reduce ('*' < NEG).
|
|
616 Conflict between rule 29 and token '/' resolved as reduce ('/' < NEG).
|
|
617 Conflict between rule 29 and token '%' resolved as reduce ('%' < NEG).
|
|
618
|
|
619
|
|
620 状態 35
|
|
621
|
|
622 24 expr: expr . '-' expr
|
|
623 25 | expr . '+' expr
|
|
624 26 | expr . '*' expr
|
|
625 27 | expr . '/' expr
|
|
626 28 | expr . '%' expr
|
|
627 30 | '(' expr . ')'
|
|
628
|
|
629 '+' shift, and go to state 41
|
|
630 '-' shift, and go to state 42
|
|
631 '*' shift, and go to state 43
|
|
632 '/' shift, and go to state 44
|
|
633 '%' shift, and go to state 45
|
|
634 ')' shift, and go to state 52
|
|
635
|
|
636
|
|
637 状態 36
|
|
638
|
|
639 7 statement: "if" comp_expr "then" .
|
|
640
|
|
641 $default reduce using rule 7 (statement)
|
|
642
|
|
643
|
|
644 状態 37
|
|
645
|
|
646 18 comp_expr: expr "==" . expr
|
|
647 24 expr: . expr '-' expr
|
|
648 25 | . expr '+' expr
|
|
649 26 | . expr '*' expr
|
|
650 27 | . expr '/' expr
|
|
651 28 | . expr '%' expr
|
|
652 29 | . '-' expr
|
|
653 30 | . '(' expr ')'
|
|
654 31 | . value
|
|
655 32 | . "ival"
|
|
656 33 | . "rand" '(' expr ')'
|
|
657 34 value: . "identifier"
|
|
658
|
|
659 "ival" shift, and go to state 18
|
|
660 "identifier" shift, and go to state 2
|
|
661 "rand" shift, and go to state 19
|
|
662 '-' shift, and go to state 20
|
|
663 '(' shift, and go to state 21
|
|
664
|
|
665 expr go to state 53
|
|
666 value go to state 24
|
|
667
|
|
668
|
|
669 状態 38
|
|
670
|
|
671 19 comp_expr: expr "!=" . expr
|
|
672 24 expr: . expr '-' expr
|
|
673 25 | . expr '+' expr
|
|
674 26 | . expr '*' expr
|
|
675 27 | . expr '/' expr
|
|
676 28 | . expr '%' expr
|
|
677 29 | . '-' expr
|
|
678 30 | . '(' expr ')'
|
|
679 31 | . value
|
|
680 32 | . "ival"
|
|
681 33 | . "rand" '(' expr ')'
|
|
682 34 value: . "identifier"
|
|
683
|
|
684 "ival" shift, and go to state 18
|
|
685 "identifier" shift, and go to state 2
|
|
686 "rand" shift, and go to state 19
|
|
687 '-' shift, and go to state 20
|
|
688 '(' shift, and go to state 21
|
|
689
|
|
690 expr go to state 54
|
|
691 value go to state 24
|
|
692
|
|
693
|
|
694 状態 39
|
|
695
|
|
696 21 comp_expr: expr ">=" . expr
|
|
697 24 expr: . expr '-' expr
|
|
698 25 | . expr '+' expr
|
|
699 26 | . expr '*' expr
|
|
700 27 | . expr '/' expr
|
|
701 28 | . expr '%' expr
|
|
702 29 | . '-' expr
|
|
703 30 | . '(' expr ')'
|
|
704 31 | . value
|
|
705 32 | . "ival"
|
|
706 33 | . "rand" '(' expr ')'
|
|
707 34 value: . "identifier"
|
|
708
|
|
709 "ival" shift, and go to state 18
|
|
710 "identifier" shift, and go to state 2
|
|
711 "rand" shift, and go to state 19
|
|
712 '-' shift, and go to state 20
|
|
713 '(' shift, and go to state 21
|
|
714
|
|
715 expr go to state 55
|
|
716 value go to state 24
|
|
717
|
|
718
|
|
719 状態 40
|
|
720
|
|
721 23 comp_expr: expr "<=" . expr
|
|
722 24 expr: . expr '-' expr
|
|
723 25 | . expr '+' expr
|
|
724 26 | . expr '*' expr
|
|
725 27 | . expr '/' expr
|
|
726 28 | . expr '%' expr
|
|
727 29 | . '-' expr
|
|
728 30 | . '(' expr ')'
|
|
729 31 | . value
|
|
730 32 | . "ival"
|
|
731 33 | . "rand" '(' expr ')'
|
|
732 34 value: . "identifier"
|
|
733
|
|
734 "ival" shift, and go to state 18
|
|
735 "identifier" shift, and go to state 2
|
|
736 "rand" shift, and go to state 19
|
|
737 '-' shift, and go to state 20
|
|
738 '(' shift, and go to state 21
|
|
739
|
|
740 expr go to state 56
|
|
741 value go to state 24
|
|
742
|
|
743
|
|
744 状態 41
|
|
745
|
|
746 24 expr: . expr '-' expr
|
|
747 25 | . expr '+' expr
|
|
748 25 | expr '+' . expr
|
|
749 26 | . expr '*' expr
|
|
750 27 | . expr '/' expr
|
|
751 28 | . expr '%' expr
|
|
752 29 | . '-' expr
|
|
753 30 | . '(' expr ')'
|
|
754 31 | . value
|
|
755 32 | . "ival"
|
|
756 33 | . "rand" '(' expr ')'
|
|
757 34 value: . "identifier"
|
|
758
|
|
759 "ival" shift, and go to state 18
|
|
760 "identifier" shift, and go to state 2
|
|
761 "rand" shift, and go to state 19
|
|
762 '-' shift, and go to state 20
|
|
763 '(' shift, and go to state 21
|
|
764
|
|
765 expr go to state 57
|
|
766 value go to state 24
|
|
767
|
|
768
|
|
769 状態 42
|
|
770
|
|
771 24 expr: . expr '-' expr
|
|
772 24 | expr '-' . expr
|
|
773 25 | . expr '+' expr
|
|
774 26 | . expr '*' expr
|
|
775 27 | . expr '/' expr
|
|
776 28 | . expr '%' expr
|
|
777 29 | . '-' expr
|
|
778 30 | . '(' expr ')'
|
|
779 31 | . value
|
|
780 32 | . "ival"
|
|
781 33 | . "rand" '(' expr ')'
|
|
782 34 value: . "identifier"
|
|
783
|
|
784 "ival" shift, and go to state 18
|
|
785 "identifier" shift, and go to state 2
|
|
786 "rand" shift, and go to state 19
|
|
787 '-' shift, and go to state 20
|
|
788 '(' shift, and go to state 21
|
|
789
|
|
790 expr go to state 58
|
|
791 value go to state 24
|
|
792
|
|
793
|
|
794 状態 43
|
|
795
|
|
796 24 expr: . expr '-' expr
|
|
797 25 | . expr '+' expr
|
|
798 26 | . expr '*' expr
|
|
799 26 | expr '*' . expr
|
|
800 27 | . expr '/' expr
|
|
801 28 | . expr '%' expr
|
|
802 29 | . '-' expr
|
|
803 30 | . '(' expr ')'
|
|
804 31 | . value
|
|
805 32 | . "ival"
|
|
806 33 | . "rand" '(' expr ')'
|
|
807 34 value: . "identifier"
|
|
808
|
|
809 "ival" shift, and go to state 18
|
|
810 "identifier" shift, and go to state 2
|
|
811 "rand" shift, and go to state 19
|
|
812 '-' shift, and go to state 20
|
|
813 '(' shift, and go to state 21
|
|
814
|
|
815 expr go to state 59
|
|
816 value go to state 24
|
|
817
|
|
818
|
|
819 状態 44
|
|
820
|
|
821 24 expr: . expr '-' expr
|
|
822 25 | . expr '+' expr
|
|
823 26 | . expr '*' expr
|
|
824 27 | . expr '/' expr
|
|
825 27 | expr '/' . expr
|
|
826 28 | . expr '%' expr
|
|
827 29 | . '-' expr
|
|
828 30 | . '(' expr ')'
|
|
829 31 | . value
|
|
830 32 | . "ival"
|
|
831 33 | . "rand" '(' expr ')'
|
|
832 34 value: . "identifier"
|
|
833
|
|
834 "ival" shift, and go to state 18
|
|
835 "identifier" shift, and go to state 2
|
|
836 "rand" shift, and go to state 19
|
|
837 '-' shift, and go to state 20
|
|
838 '(' shift, and go to state 21
|
|
839
|
|
840 expr go to state 60
|
|
841 value go to state 24
|
|
842
|
|
843
|
|
844 状態 45
|
|
845
|
|
846 24 expr: . expr '-' expr
|
|
847 25 | . expr '+' expr
|
|
848 26 | . expr '*' expr
|
|
849 27 | . expr '/' expr
|
|
850 28 | . expr '%' expr
|
|
851 28 | expr '%' . expr
|
|
852 29 | . '-' expr
|
|
853 30 | . '(' expr ')'
|
|
854 31 | . value
|
|
855 32 | . "ival"
|
|
856 33 | . "rand" '(' expr ')'
|
|
857 34 value: . "identifier"
|
|
858
|
|
859 "ival" shift, and go to state 18
|
|
860 "identifier" shift, and go to state 2
|
|
861 "rand" shift, and go to state 19
|
|
862 '-' shift, and go to state 20
|
|
863 '(' shift, and go to state 21
|
|
864
|
|
865 expr go to state 61
|
|
866 value go to state 24
|
|
867
|
|
868
|
|
869 状態 46
|
|
870
|
|
871 20 comp_expr: expr '>' . expr
|
|
872 24 expr: . expr '-' expr
|
|
873 25 | . expr '+' expr
|
|
874 26 | . expr '*' expr
|
|
875 27 | . expr '/' expr
|
|
876 28 | . expr '%' expr
|
|
877 29 | . '-' expr
|
|
878 30 | . '(' expr ')'
|
|
879 31 | . value
|
|
880 32 | . "ival"
|
|
881 33 | . "rand" '(' expr ')'
|
|
882 34 value: . "identifier"
|
|
883
|
|
884 "ival" shift, and go to state 18
|
|
885 "identifier" shift, and go to state 2
|
|
886 "rand" shift, and go to state 19
|
|
887 '-' shift, and go to state 20
|
|
888 '(' shift, and go to state 21
|
|
889
|
|
890 expr go to state 62
|
|
891 value go to state 24
|
|
892
|
|
893
|
|
894 状態 47
|
|
895
|
|
896 22 comp_expr: expr '<' . expr
|
|
897 24 expr: . expr '-' expr
|
|
898 25 | . expr '+' expr
|
|
899 26 | . expr '*' expr
|
|
900 27 | . expr '/' expr
|
|
901 28 | . expr '%' expr
|
|
902 29 | . '-' expr
|
|
903 30 | . '(' expr ')'
|
|
904 31 | . value
|
|
905 32 | . "ival"
|
|
906 33 | . "rand" '(' expr ')'
|
|
907 34 value: . "identifier"
|
|
908
|
|
909 "ival" shift, and go to state 18
|
|
910 "identifier" shift, and go to state 2
|
|
911 "rand" shift, and go to state 19
|
|
912 '-' shift, and go to state 20
|
|
913 '(' shift, and go to state 21
|
|
914
|
|
915 expr go to state 63
|
|
916 value go to state 24
|
|
917
|
|
918
|
|
919 状態 48
|
|
920
|
|
921 10 statement: "for" assign "to" . expr "step" expr
|
|
922 11 | "for" assign "to" . expr
|
|
923 24 expr: . expr '-' expr
|
|
924 25 | . expr '+' expr
|
|
925 26 | . expr '*' expr
|
|
926 27 | . expr '/' expr
|
|
927 28 | . expr '%' expr
|
|
928 29 | . '-' expr
|
|
929 30 | . '(' expr ')'
|
|
930 31 | . value
|
|
931 32 | . "ival"
|
|
932 33 | . "rand" '(' expr ')'
|
|
933 34 value: . "identifier"
|
|
934
|
|
935 "ival" shift, and go to state 18
|
|
936 "identifier" shift, and go to state 2
|
|
937 "rand" shift, and go to state 19
|
|
938 '-' shift, and go to state 20
|
|
939 '(' shift, and go to state 21
|
|
940
|
|
941 expr go to state 64
|
|
942 value go to state 24
|
|
943
|
|
944
|
|
945 状態 49
|
|
946
|
|
947 24 expr: . expr '-' expr
|
|
948 25 | . expr '+' expr
|
|
949 26 | . expr '*' expr
|
|
950 27 | . expr '/' expr
|
|
951 28 | . expr '%' expr
|
|
952 29 | . '-' expr
|
|
953 30 | . '(' expr ')'
|
|
954 31 | . value
|
|
955 32 | . "ival"
|
|
956 33 | . "rand" '(' expr ')'
|
|
957 34 value: . "identifier"
|
|
958 36 args: args ',' . expr
|
|
959
|
|
960 "ival" shift, and go to state 18
|
|
961 "identifier" shift, and go to state 2
|
|
962 "rand" shift, and go to state 19
|
|
963 '-' shift, and go to state 20
|
|
964 '(' shift, and go to state 21
|
|
965
|
|
966 expr go to state 65
|
|
967 value go to state 24
|
|
968
|
|
969
|
|
970 状態 50
|
|
971
|
|
972 17 assign: value '=' expr . ["\n", "to"]
|
|
973 24 expr: expr . '-' expr
|
|
974 25 | expr . '+' expr
|
|
975 26 | expr . '*' expr
|
|
976 27 | expr . '/' expr
|
|
977 28 | expr . '%' expr
|
|
978
|
|
979 '+' shift, and go to state 41
|
|
980 '-' shift, and go to state 42
|
|
981 '*' shift, and go to state 43
|
|
982 '/' shift, and go to state 44
|
|
983 '%' shift, and go to state 45
|
|
984
|
|
985 $default reduce using rule 17 (assign)
|
|
986
|
|
987
|
|
988 状態 51
|
|
989
|
|
990 24 expr: expr . '-' expr
|
|
991 25 | expr . '+' expr
|
|
992 26 | expr . '*' expr
|
|
993 27 | expr . '/' expr
|
|
994 28 | expr . '%' expr
|
|
995 33 | "rand" '(' expr . ')'
|
|
996
|
|
997 '+' shift, and go to state 41
|
|
998 '-' shift, and go to state 42
|
|
999 '*' shift, and go to state 43
|
|
1000 '/' shift, and go to state 44
|
|
1001 '%' shift, and go to state 45
|
|
1002 ')' shift, and go to state 66
|
|
1003
|
|
1004
|
|
1005 状態 52
|
|
1006
|
|
1007 30 expr: '(' expr ')' .
|
|
1008
|
|
1009 $default reduce using rule 30 (expr)
|
|
1010
|
|
1011
|
|
1012 状態 53
|
|
1013
|
|
1014 18 comp_expr: expr "==" expr . ["\n", "then"]
|
|
1015 24 expr: expr . '-' expr
|
|
1016 25 | expr . '+' expr
|
|
1017 26 | expr . '*' expr
|
|
1018 27 | expr . '/' expr
|
|
1019 28 | expr . '%' expr
|
|
1020
|
|
1021 '+' shift, and go to state 41
|
|
1022 '-' shift, and go to state 42
|
|
1023 '*' shift, and go to state 43
|
|
1024 '/' shift, and go to state 44
|
|
1025 '%' shift, and go to state 45
|
|
1026
|
|
1027 $default reduce using rule 18 (comp_expr)
|
|
1028
|
|
1029
|
|
1030 状態 54
|
|
1031
|
|
1032 19 comp_expr: expr "!=" expr . ["\n", "then"]
|
|
1033 24 expr: expr . '-' expr
|
|
1034 25 | expr . '+' expr
|
|
1035 26 | expr . '*' expr
|
|
1036 27 | expr . '/' expr
|
|
1037 28 | expr . '%' expr
|
|
1038
|
|
1039 '+' shift, and go to state 41
|
|
1040 '-' shift, and go to state 42
|
|
1041 '*' shift, and go to state 43
|
|
1042 '/' shift, and go to state 44
|
|
1043 '%' shift, and go to state 45
|
|
1044
|
|
1045 $default reduce using rule 19 (comp_expr)
|
|
1046
|
|
1047
|
|
1048 状態 55
|
|
1049
|
|
1050 21 comp_expr: expr ">=" expr . ["\n", "then"]
|
|
1051 24 expr: expr . '-' expr
|
|
1052 25 | expr . '+' expr
|
|
1053 26 | expr . '*' expr
|
|
1054 27 | expr . '/' expr
|
|
1055 28 | expr . '%' expr
|
|
1056
|
|
1057 '+' shift, and go to state 41
|
|
1058 '-' shift, and go to state 42
|
|
1059 '*' shift, and go to state 43
|
|
1060 '/' shift, and go to state 44
|
|
1061 '%' shift, and go to state 45
|
|
1062
|
|
1063 $default reduce using rule 21 (comp_expr)
|
|
1064
|
|
1065
|
|
1066 状態 56
|
|
1067
|
|
1068 23 comp_expr: expr "<=" expr . ["\n", "then"]
|
|
1069 24 expr: expr . '-' expr
|
|
1070 25 | expr . '+' expr
|
|
1071 26 | expr . '*' expr
|
|
1072 27 | expr . '/' expr
|
|
1073 28 | expr . '%' expr
|
|
1074
|
|
1075 '+' shift, and go to state 41
|
|
1076 '-' shift, and go to state 42
|
|
1077 '*' shift, and go to state 43
|
|
1078 '/' shift, and go to state 44
|
|
1079 '%' shift, and go to state 45
|
|
1080
|
|
1081 $default reduce using rule 23 (comp_expr)
|
|
1082
|
|
1083
|
|
1084 状態 57
|
|
1085
|
|
1086 24 expr: expr . '-' expr
|
|
1087 25 | expr . '+' expr ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', "step", '>', '<', ')', ',']
|
|
1088 25 | expr '+' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', "step", '>', '<', ')', ',']
|
|
1089 26 | expr . '*' expr
|
|
1090 27 | expr . '/' expr
|
|
1091 28 | expr . '%' expr
|
|
1092
|
|
1093 '*' shift, and go to state 43
|
|
1094 '/' shift, and go to state 44
|
|
1095 '%' shift, and go to state 45
|
|
1096
|
|
1097 $default reduce using rule 25 (expr)
|
|
1098
|
|
1099 Conflict between rule 25 and token '+' resolved as reduce (%left '+').
|
|
1100 Conflict between rule 25 and token '-' resolved as reduce (%left '-').
|
|
1101 Conflict between rule 25 and token '*' resolved as shift ('+' < '*').
|
|
1102 Conflict between rule 25 and token '/' resolved as shift ('+' < '/').
|
|
1103 Conflict between rule 25 and token '%' resolved as shift ('+' < '%').
|
|
1104
|
|
1105
|
|
1106 状態 58
|
|
1107
|
|
1108 24 expr: expr . '-' expr ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', "step", '>', '<', ')', ',']
|
|
1109 24 | expr '-' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', "step", '>', '<', ')', ',']
|
|
1110 25 | expr . '+' expr
|
|
1111 26 | expr . '*' expr
|
|
1112 27 | expr . '/' expr
|
|
1113 28 | expr . '%' expr
|
|
1114
|
|
1115 '*' shift, and go to state 43
|
|
1116 '/' shift, and go to state 44
|
|
1117 '%' shift, and go to state 45
|
|
1118
|
|
1119 $default reduce using rule 24 (expr)
|
|
1120
|
|
1121 Conflict between rule 24 and token '+' resolved as reduce (%left '+').
|
|
1122 Conflict between rule 24 and token '-' resolved as reduce (%left '-').
|
|
1123 Conflict between rule 24 and token '*' resolved as shift ('-' < '*').
|
|
1124 Conflict between rule 24 and token '/' resolved as shift ('-' < '/').
|
|
1125 Conflict between rule 24 and token '%' resolved as shift ('-' < '%').
|
|
1126
|
|
1127
|
|
1128 状態 59
|
|
1129
|
|
1130 24 expr: expr . '-' expr
|
|
1131 25 | expr . '+' expr
|
|
1132 26 | expr . '*' expr ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1133 26 | expr '*' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1134 27 | expr . '/' expr
|
|
1135 28 | expr . '%' expr
|
|
1136
|
|
1137 $default reduce using rule 26 (expr)
|
|
1138
|
|
1139 Conflict between rule 26 and token '+' resolved as reduce ('+' < '*').
|
|
1140 Conflict between rule 26 and token '-' resolved as reduce ('-' < '*').
|
|
1141 Conflict between rule 26 and token '*' resolved as reduce (%left '*').
|
|
1142 Conflict between rule 26 and token '/' resolved as reduce (%left '/').
|
|
1143 Conflict between rule 26 and token '%' resolved as reduce (%left '%').
|
|
1144
|
|
1145
|
|
1146 状態 60
|
|
1147
|
|
1148 24 expr: expr . '-' expr
|
|
1149 25 | expr . '+' expr
|
|
1150 26 | expr . '*' expr
|
|
1151 27 | expr . '/' expr ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1152 27 | expr '/' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1153 28 | expr . '%' expr
|
|
1154
|
|
1155 $default reduce using rule 27 (expr)
|
|
1156
|
|
1157 Conflict between rule 27 and token '+' resolved as reduce ('+' < '/').
|
|
1158 Conflict between rule 27 and token '-' resolved as reduce ('-' < '/').
|
|
1159 Conflict between rule 27 and token '*' resolved as reduce (%left '*').
|
|
1160 Conflict between rule 27 and token '/' resolved as reduce (%left '/').
|
|
1161 Conflict between rule 27 and token '%' resolved as reduce (%left '%').
|
|
1162
|
|
1163
|
|
1164 状態 61
|
|
1165
|
|
1166 24 expr: expr . '-' expr
|
|
1167 25 | expr . '+' expr
|
|
1168 26 | expr . '*' expr
|
|
1169 27 | expr . '/' expr
|
|
1170 28 | expr . '%' expr ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1171 28 | expr '%' expr . ["==", "!=", ">=", "<=", "\n", "then", "to", '+', '-', '*', '/', '%', "step", '>', '<', ')', ',']
|
|
1172
|
|
1173 $default reduce using rule 28 (expr)
|
|
1174
|
|
1175 Conflict between rule 28 and token '+' resolved as reduce ('+' < '%').
|
|
1176 Conflict between rule 28 and token '-' resolved as reduce ('-' < '%').
|
|
1177 Conflict between rule 28 and token '*' resolved as reduce (%left '*').
|
|
1178 Conflict between rule 28 and token '/' resolved as reduce (%left '/').
|
|
1179 Conflict between rule 28 and token '%' resolved as reduce (%left '%').
|
|
1180
|
|
1181
|
|
1182 状態 62
|
|
1183
|
|
1184 20 comp_expr: expr '>' expr . ["\n", "then"]
|
|
1185 24 expr: expr . '-' expr
|
|
1186 25 | expr . '+' expr
|
|
1187 26 | expr . '*' expr
|
|
1188 27 | expr . '/' expr
|
|
1189 28 | expr . '%' expr
|
|
1190
|
|
1191 '+' shift, and go to state 41
|
|
1192 '-' shift, and go to state 42
|
|
1193 '*' shift, and go to state 43
|
|
1194 '/' shift, and go to state 44
|
|
1195 '%' shift, and go to state 45
|
|
1196
|
|
1197 $default reduce using rule 20 (comp_expr)
|
|
1198
|
|
1199
|
|
1200 状態 63
|
|
1201
|
|
1202 22 comp_expr: expr '<' expr . ["\n", "then"]
|
|
1203 24 expr: expr . '-' expr
|
|
1204 25 | expr . '+' expr
|
|
1205 26 | expr . '*' expr
|
|
1206 27 | expr . '/' expr
|
|
1207 28 | expr . '%' expr
|
|
1208
|
|
1209 '+' shift, and go to state 41
|
|
1210 '-' shift, and go to state 42
|
|
1211 '*' shift, and go to state 43
|
|
1212 '/' shift, and go to state 44
|
|
1213 '%' shift, and go to state 45
|
|
1214
|
|
1215 $default reduce using rule 22 (comp_expr)
|
|
1216
|
|
1217
|
|
1218 状態 64
|
|
1219
|
|
1220 10 statement: "for" assign "to" expr . "step" expr
|
|
1221 11 | "for" assign "to" expr . ["\n"]
|
|
1222 24 expr: expr . '-' expr
|
|
1223 25 | expr . '+' expr
|
|
1224 26 | expr . '*' expr
|
|
1225 27 | expr . '/' expr
|
|
1226 28 | expr . '%' expr
|
|
1227
|
|
1228 '+' shift, and go to state 41
|
|
1229 '-' shift, and go to state 42
|
|
1230 '*' shift, and go to state 43
|
|
1231 '/' shift, and go to state 44
|
|
1232 '%' shift, and go to state 45
|
|
1233 "step" shift, and go to state 67
|
|
1234
|
|
1235 $default reduce using rule 11 (statement)
|
|
1236
|
|
1237
|
|
1238 状態 65
|
|
1239
|
|
1240 24 expr: expr . '-' expr
|
|
1241 25 | expr . '+' expr
|
|
1242 26 | expr . '*' expr
|
|
1243 27 | expr . '/' expr
|
|
1244 28 | expr . '%' expr
|
|
1245 36 args: args ',' expr . ["\n", ',']
|
|
1246
|
|
1247 '+' shift, and go to state 41
|
|
1248 '-' shift, and go to state 42
|
|
1249 '*' shift, and go to state 43
|
|
1250 '/' shift, and go to state 44
|
|
1251 '%' shift, and go to state 45
|
|
1252
|
|
1253 $default reduce using rule 36 (args)
|
|
1254
|
|
1255
|
|
1256 状態 66
|
|
1257
|
|
1258 33 expr: "rand" '(' expr ')' .
|
|
1259
|
|
1260 $default reduce using rule 33 (expr)
|
|
1261
|
|
1262
|
|
1263 状態 67
|
|
1264
|
|
1265 10 statement: "for" assign "to" expr "step" . expr
|
|
1266 24 expr: . expr '-' expr
|
|
1267 25 | . expr '+' expr
|
|
1268 26 | . expr '*' expr
|
|
1269 27 | . expr '/' expr
|
|
1270 28 | . expr '%' expr
|
|
1271 29 | . '-' expr
|
|
1272 30 | . '(' expr ')'
|
|
1273 31 | . value
|
|
1274 32 | . "ival"
|
|
1275 33 | . "rand" '(' expr ')'
|
|
1276 34 value: . "identifier"
|
|
1277
|
|
1278 "ival" shift, and go to state 18
|
|
1279 "identifier" shift, and go to state 2
|
|
1280 "rand" shift, and go to state 19
|
|
1281 '-' shift, and go to state 20
|
|
1282 '(' shift, and go to state 21
|
|
1283
|
|
1284 expr go to state 68
|
|
1285 value go to state 24
|
|
1286
|
|
1287
|
|
1288 状態 68
|
|
1289
|
|
1290 10 statement: "for" assign "to" expr "step" expr . ["\n"]
|
|
1291 24 expr: expr . '-' expr
|
|
1292 25 | expr . '+' expr
|
|
1293 26 | expr . '*' expr
|
|
1294 27 | expr . '/' expr
|
|
1295 28 | expr . '%' expr
|
|
1296
|
|
1297 '+' shift, and go to state 41
|
|
1298 '-' shift, and go to state 42
|
|
1299 '*' shift, and go to state 43
|
|
1300 '/' shift, and go to state 44
|
|
1301 '%' shift, and go to state 45
|
|
1302
|
|
1303 $default reduce using rule 10 (statement)
|