GNU Bison XML Automaton Report

input grammar: reverse_precedence_fig_5.y

Table of Contents

Reductions

Nonterminals useless in grammar

Terminals unused in grammar

Rules useless in grammar

Conflicts

Grammar

0 $acceptbig_s $end 1 big_ssmall_a big_a big_b small_a 2 | small_b big_a big_b small_b 3 big_asmall_a big_c big_d big_e 4 big_bsmall_c 5 | foo 6 big_cbig_d 7 big_dsmall_a 8 big_esmall_a 9 | bar

Terminals, with rules where they appear

Nonterminals, with rules where they appear

Automaton

State 0

0 $accept big_s $end 1 big_s small_a big_a big_b small_a 2 | small_b big_a big_b small_b small_b shift, and go to state 1 small_a shift, and go to state 2 big_s go to state 3

State 1

2 big_ssmall_b big_a big_b small_b 3 big_a small_a big_c big_d big_e small_a shift, and go to state 4 big_a go to state 5

State 2

1 big_ssmall_a big_a big_b small_a 3 big_a small_a big_c big_d big_e small_a shift, and go to state 4 big_a go to state 6

State 3

0 $acceptbig_s $end $end shift, and go to state 7

State 4

3 big_asmall_a big_c big_d big_e 6 big_c big_d 7 big_d small_a small_a shift, and go to state 8 big_c go to state 9 big_d go to state 10

State 5

2 big_ssmall_b big_a big_b small_b 4 big_b small_c 5 | foo small_c shift, and go to state 11 foo shift, and go to state 12 big_b go to state 13

State 6

1 big_ssmall_a big_a big_b small_a 4 big_b small_c 5 | foo small_c shift, and go to state 11 foo shift, and go to state 12 big_b go to state 14

State 7

0 $acceptbig_s $end $default accept

State 8

7 big_dsmall_a [bar, small_a] bar reduce using rule 7 (big_d) small_a reduce using rule 7 (big_d)

State 9

3 big_asmall_a big_c big_d big_e 7 big_d small_a small_a shift, and go to state 8 big_d go to state 15

State 10

6 big_cbig_d [small_a] small_a reduce using rule 6 (big_c)

State 11

4 big_bsmall_c [small_b, small_a] small_b reduce using rule 4 (big_b) small_a reduce using rule 4 (big_b)

State 12

5 big_bfoo [small_b, small_a] small_b reduce using rule 5 (big_b) small_a reduce using rule 5 (big_b)

State 13

2 big_ssmall_b big_a big_b small_b small_b shift, and go to state 16

State 14

1 big_ssmall_a big_a big_b small_a small_a shift, and go to state 17

State 15

3 big_asmall_a big_c big_d big_e 8 big_e small_a 9 | bar bar shift, and go to state 18 small_a shift, and go to state 19 big_e go to state 20

State 16

2 big_ssmall_b big_a big_b small_b [$end] $end reduce using rule 2 (big_s)

State 17

1 big_ssmall_a big_a big_b small_a [$end] $end reduce using rule 1 (big_s)

State 18

9 big_ebar [small_c, foo] small_c reduce using rule 9 (big_e) foo reduce using rule 9 (big_e)

State 19

8 big_esmall_a [small_c, foo] small_c reduce using rule 8 (big_e) foo reduce using rule 8 (big_e)

State 20

3 big_asmall_a big_c big_d big_e [small_c, foo] small_c reduce using rule 3 (big_a) foo reduce using rule 3 (big_a)