Terminals which are not used: INTEGER_CONSTANT Grammar rule 1 description -> typedef_list field_list rule 2 typedef_list -> /* empty */ rule 3 typedef_list -> typedef_list typedef rule 4 typedef -> TYPE type_name '=' type ';' rule 5 typedef -> '#' INCLUDE STRING_CONSTANT rule 6 typedef -> error rule 7 type_name -> NAME rule 8 field -> field_name '=' type ';' rule 9 field -> field_name error rule 10 field_name -> NAME rule 11 type -> STRING rule 12 type -> INTEGER rule 13 type -> REAL rule 14 type -> TIME rule 15 type -> NAME rule 16 type -> structure rule 17 type -> list rule 18 type -> enumeration rule 19 structure -> '{' field_list '}' rule 20 field_list -> /* empty */ rule 21 field_list -> field_list field rule 22 list -> '[' type ']' rule 23 enumeration -> '(' enum_list_begin enum_list optional_comma ')' rule 24 enum_list_begin -> /* empty */ rule 25 enum_list -> enum_name rule 26 enum_list -> enum_list ',' enum_name rule 27 enum_name -> NAME rule 28 optional_comma -> /* empty */ rule 29 optional_comma -> ',' Terminals, with rules where they appear $ (-1) '#' (35) 5 '(' (40) 23 ')' (41) 23 ',' (44) 26 29 ';' (59) 4 8 '=' (61) 4 8 '[' (91) 22 ']' (93) 22 '{' (123) 19 '}' (125) 19 error (256) 6 9 INCLUDE (257) 5 INTEGER (258) 12 INTEGER_CONSTANT (259) NAME (260) 7 10 15 27 REAL (261) 13 STRING (262) 11 STRING_CONSTANT (263) 5 TIME (264) 14 TYPE (265) 4 Nonterminals, with rules where they appear description (22) on left: 1 typedef_list (23) on left: 2 3, on right: 1 3 typedef (24) on left: 4 5 6, on right: 3 type_name (25) on left: 7, on right: 4 field (26) on left: 8 9, on right: 21 field_name (27) on left: 10, on right: 8 9 type (28) on left: 11 12 13 14 15 16 17 18, on right: 4 8 22 structure (29) on left: 19, on right: 16 field_list (30) on left: 20 21, on right: 1 19 21 list (31) on left: 22, on right: 17 enumeration (32) on left: 23, on right: 18 enum_list_begin (33) on left: 24, on right: 23 enum_list (34) on left: 25 26, on right: 23 26 enum_name (35) on left: 27, on right: 25 26 optional_comma (36) on left: 28 29, on right: 23 state 0 $default reduce using rule 2 (typedef_list) description go to state 44 typedef_list go to state 1 state 1 description -> typedef_list . field_list (rule 1) typedef_list -> typedef_list . typedef (rule 3) error shift, and go to state 2 TYPE shift, and go to state 3 '#' shift, and go to state 4 $ reduce using rule 20 (field_list) NAME reduce using rule 20 (field_list) typedef go to state 5 field_list go to state 6 state 2 typedef -> error . (rule 6) $default reduce using rule 6 (typedef) state 3 typedef -> TYPE . type_name '=' type ';' (rule 4) NAME shift, and go to state 7 type_name go to state 8 state 4 typedef -> '#' . INCLUDE STRING_CONSTANT (rule 5) INCLUDE shift, and go to state 9 state 5 typedef_list -> typedef_list typedef . (rule 3) $default reduce using rule 3 (typedef_list) state 6 description -> typedef_list field_list . (rule 1) field_list -> field_list . field (rule 21) NAME shift, and go to state 10 $default reduce using rule 1 (description) field go to state 11 field_name go to state 12 state 7 type_name -> NAME . (rule 7) $default reduce using rule 7 (type_name) state 8 typedef -> TYPE type_name . '=' type ';' (rule 4) '=' shift, and go to state 13 state 9 typedef -> '#' INCLUDE . STRING_CONSTANT (rule 5) STRING_CONSTANT shift, and go to state 14 state 10 field_name -> NAME . (rule 10) $default reduce using rule 10 (field_name) state 11 field_list -> field_list field . (rule 21) $default reduce using rule 21 (field_list) state 12 field -> field_name . '=' type ';' (rule 8) field -> field_name . error (rule 9) error shift, and go to state 15 '=' shift, and go to state 16 state 13 typedef -> TYPE type_name '=' . type ';' (rule 4) INTEGER shift, and go to state 17 NAME shift, and go to state 18 REAL shift, and go to state 19 STRING shift, and go to state 20 TIME shift, and go to state 21 '{' shift, and go to state 22 '[' shift, and go to state 23 '(' shift, and go to state 24 type go to state 25 structure go to state 26 list go to state 27 enumeration go to state 28 state 14 typedef -> '#' INCLUDE STRING_CONSTANT . (rule 5) $default reduce using rule 5 (typedef) state 15 field -> field_name error . (rule 9) $default reduce using rule 9 (field) state 16 field -> field_name '=' . type ';' (rule 8) INTEGER shift, and go to state 17 NAME shift, and go to state 18 REAL shift, and go to state 19 STRING shift, and go to state 20 TIME shift, and go to state 21 '{' shift, and go to state 22 '[' shift, and go to state 23 '(' shift, and go to state 24 type go to state 29 structure go to state 26 list go to state 27 enumeration go to state 28 state 17 type -> INTEGER . (rule 12) $default reduce using rule 12 (type) state 18 type -> NAME . (rule 15) $default reduce using rule 15 (type) state 19 type -> REAL . (rule 13) $default reduce using rule 13 (type) state 20 type -> STRING . (rule 11) $default reduce using rule 11 (type) state 21 type -> TIME . (rule 14) $default reduce using rule 14 (type) state 22 structure -> '{' . field_list '}' (rule 19) $default reduce using rule 20 (field_list) field_list go to state 30 state 23 list -> '[' . type ']' (rule 22) INTEGER shift, and go to state 17 NAME shift, and go to state 18 REAL shift, and go to state 19 STRING shift, and go to state 20 TIME shift, and go to state 21 '{' shift, and go to state 22 '[' shift, and go to state 23 '(' shift, and go to state 24 type go to state 31 structure go to state 26 list go to state 27 enumeration go to state 28 state 24 enumeration -> '(' . enum_list_begin enum_list optional_comma ')' (rule 23) $default reduce using rule 24 (enum_list_begin) enum_list_begin go to state 32 state 25 typedef -> TYPE type_name '=' type . ';' (rule 4) ';' shift, and go to state 33 state 26 type -> structure . (rule 16) $default reduce using rule 16 (type) state 27 type -> list . (rule 17) $default reduce using rule 17 (type) state 28 type -> enumeration . (rule 18) $default reduce using rule 18 (type) state 29 field -> field_name '=' type . ';' (rule 8) ';' shift, and go to state 34 state 30 structure -> '{' field_list . '}' (rule 19) field_list -> field_list . field (rule 21) NAME shift, and go to state 10 '}' shift, and go to state 35 field go to state 11 field_name go to state 12 state 31 list -> '[' type . ']' (rule 22) ']' shift, and go to state 36 state 32 enumeration -> '(' enum_list_begin . enum_list optional_comma ')' (rule 23) NAME shift, and go to state 37 enum_list go to state 38 enum_name go to state 39 state 33 typedef -> TYPE type_name '=' type ';' . (rule 4) $default reduce using rule 4 (typedef) state 34 field -> field_name '=' type ';' . (rule 8) $default reduce using rule 8 (field) state 35 structure -> '{' field_list '}' . (rule 19) $default reduce using rule 19 (structure) state 36 list -> '[' type ']' . (rule 22) $default reduce using rule 22 (list) state 37 enum_name -> NAME . (rule 27) $default reduce using rule 27 (enum_name) state 38 enumeration -> '(' enum_list_begin enum_list . optional_comma ')' (rule 23) enum_list -> enum_list . ',' enum_name (rule 26) ',' shift, and go to state 40 $default reduce using rule 28 (optional_comma) optional_comma go to state 41 state 39 enum_list -> enum_name . (rule 25) $default reduce using rule 25 (enum_list) state 40 enum_list -> enum_list ',' . enum_name (rule 26) optional_comma -> ',' . (rule 29) NAME shift, and go to state 37 $default reduce using rule 29 (optional_comma) enum_name go to state 42 state 41 enumeration -> '(' enum_list_begin enum_list optional_comma . ')' (rule 23) ')' shift, and go to state 43 state 42 enum_list -> enum_list ',' enum_name . (rule 26) $default reduce using rule 26 (enum_list) state 43 enumeration -> '(' enum_list_begin enum_list optional_comma ')' . (rule 23) $default reduce using rule 23 (enumeration) state 44 $ go to state 45 state 45 $ go to state 46 state 46 $default accept