input grammar: src/parse-gram.y
"="
0 $accept → input $end 1 input → prologue_declarations "%%" grammar epilogue.opt 2 prologue_declarations → %empty 3 | prologue_declarations prologue_declaration 4 prologue_declaration → grammar_declaration 5 | "%{...%}" 6 | "%<flag>" 7 | "%define" variable value 8 | "%defines" 9 | "%defines" "string" 10 | "%error-verbose" 11 | "%expect" "integer literal" 12 | "%expect-rr" "integer literal" 13 | "%file-prefix" "string" 14 | "%glr-parser" 15 | "%initial-action" "{...}" 16 | "%language" "string" 17 | "%name-prefix" "string" 18 | "%no-lines" 19 | "%nondeterministic-parser" 20 | "%output" "string" 21 $@1 → %empty 22 prologue_declaration → "%param" $@1 params 23 | "%pure-parser" 24 | "%require" "string" 25 | "%skeleton" "string" 26 | "%token-table" 27 | "%verbose" 28 | "%yacc" 29 | error ";" 30 | ";" 31 params → params "{...}" 32 | "{...}" 33 grammar_declaration → symbol_declaration 34 | "%start" symbol 35 | code_props_type "{...}" generic_symlist 36 | "%default-prec" 37 | "%no-default-prec" 38 | "%code" "{...}" 39 | "%code" "identifier" "{...}" 40 code_props_type → "%destructor" 41 | "%printer" 42 union_name → %empty 43 | "identifier" 44 grammar_declaration → "%union" union_name "{...}" 45 $@2 → %empty 46 symbol_declaration → "%nterm" $@2 nterm_decls 47 $@3 → %empty 48 symbol_declaration → "%token" $@3 token_decls 49 | "%type" symbol_decls 50 | precedence_declarator token_decls_for_prec 51 precedence_declarator → "%left" 52 | "%right" 53 | "%nonassoc" 54 | "%precedence" 55 tag.opt → %empty 56 | "<tag>" 57 generic_symlist → generic_symlist_item 58 | generic_symlist generic_symlist_item 59 generic_symlist_item → symbol 60 | tag 61 tag → "<tag>" 62 | "<*>" 63 | "<>" 64 nterm_decls → token_decls 65 token_decls → token_decl.1 66 | "<tag>" token_decl.1 67 | token_decls "<tag>" token_decl.1 68 token_decl.1 → token_decl 69 | token_decl.1 token_decl 70 token_decl → id int.opt alias 71 int.opt → %empty 72 | "integer literal" 73 alias → %empty 74 | string_as_id 75 | "translatable string" 76 token_decls_for_prec → token_decl_for_prec.1 77 | "<tag>" token_decl_for_prec.1 78 | token_decls_for_prec "<tag>" token_decl_for_prec.1 79 token_decl_for_prec.1 → token_decl_for_prec 80 | token_decl_for_prec.1 token_decl_for_prec 81 token_decl_for_prec → id int.opt 82 | string_as_id 83 symbol_decls → symbol_decl.1 84 | "<tag>" symbol_decl.1 85 | symbol_decls "<tag>" symbol_decl.1 86 symbol_decl.1 → symbol 87 | symbol_decl.1 symbol 88 grammar → rules_or_grammar_declaration 89 | grammar rules_or_grammar_declaration 90 rules_or_grammar_declaration → rules 91 | grammar_declaration ";" 92 | error ";" 93 $@4 → %empty 94 rules → id_colon named_ref.opt $@4 ":" rhses.1 95 rhses.1 → rhs 96 | rhses.1 "|" rhs 97 | rhses.1 ";" 98 rhs → %empty 99 | rhs symbol named_ref.opt 100 | rhs tag.opt "{...}" named_ref.opt 101 | rhs "%?{...}" 102 | rhs "%empty" 103 | rhs "%prec" symbol 104 | rhs "%dprec" "integer literal" 105 | rhs "%merge" "<tag>" 106 | rhs "%expect" "integer literal" 107 | rhs "%expect-rr" "integer literal" 108 named_ref.opt → %empty 109 | "[identifier]" 110 variable → "identifier" 111 value → %empty 112 | "identifier" 113 | "string" 114 | "{...}" 115 id → "identifier" 116 | "character literal" 117 id_colon → "identifier:" 118 symbol → id 119 | string_as_id 120 string_as_id → "string" 121 epilogue.opt → %empty 122 | "%%" "epilogue"
$end (0) 0 error (256) 29 92 "string" (258) 9 13 16 17 20 24 25 113 120 "translatable string" (259) 75 "%token" (260) 48 "%nterm" (261) 46 "%type" (262) 49 "%destructor" (263) 40 "%printer" (264) 41 "%left" (265) 51 "%right" (266) 52 "%nonassoc" (267) 53 "%precedence" (268) 54 "%prec" (269) 103 "%dprec" (270) 104 "%merge" (271) 105 "%code" (272) 38 39 "%default-prec" (273) 36 "%define" (274) 7 "%defines" (275) 8 9 "%error-verbose" (276) 10 "%expect" (277) 11 106 "%expect-rr" (278) 12 107 "%<flag>" (279) 6 "%file-prefix" (280) 13 "%glr-parser" (281) 14 "%initial-action" (282) 15 "%language" (283) 16 "%name-prefix" (284) 17 "%no-default-prec" (285) 37 "%no-lines" (286) 18 "%nondeterministic-parser" (287) 19 "%output" (288) 20 "%pure-parser" (289) 23 "%require" (290) 24 "%skeleton" (291) 25 "%start" (292) 34 "%token-table" (293) 26 "%verbose" (294) 27 "%yacc" (295) 28 "{...}" (296) 15 31 32 35 38 39 44 100 114 "%?{...}" (297) 101 "[identifier]" (298) 109 "character literal" (299) 116 ":" (300) 94 "epilogue" (301) 122 "=" (302) "identifier" (303) 39 43 110 112 115 "identifier:" (304) 117 "%%" (305) 1 122 "|" (306) 96 "%{...%}" (307) 5 ";" (308) 29 30 91 92 97 "<tag>" (309) 56 61 66 67 77 78 84 85 105 "<*>" (310) 62 "<>" (311) 63 "integer literal" (312) 11 12 72 104 106 107 "%param" (313) 22 "%union" (314) 44 "%empty" (315) 102
$accept (61) on left: 0 input (62) on left: 1 on right: 0 prologue_declarations (63) on left: 2 3 on right: 1 3 prologue_declaration (64) on left: 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 on right: 3 $@1 (65) on left: 21 on right: 22 params (66) on left: 31 32 on right: 22 31 grammar_declaration (67) on left: 33 34 35 36 37 38 39 44 on right: 4 91 code_props_type (68) on left: 40 41 on right: 35 union_name (69) on left: 42 43 on right: 44 symbol_declaration (70) on left: 46 48 49 50 on right: 33 $@2 (71) on left: 45 on right: 46 $@3 (72) on left: 47 on right: 48 precedence_declarator (73) on left: 51 52 53 54 on right: 50 tag.opt (74) on left: 55 56 on right: 100 generic_symlist (75) on left: 57 58 on right: 35 58 generic_symlist_item (76) on left: 59 60 on right: 57 58 tag (77) on left: 61 62 63 on right: 60 nterm_decls (78) on left: 64 on right: 46 token_decls (79) on left: 65 66 67 on right: 48 64 67 token_decl.1 (80) on left: 68 69 on right: 65 66 67 69 token_decl (81) on left: 70 on right: 68 69 int.opt (82) on left: 71 72 on right: 70 81 alias (83) on left: 73 74 75 on right: 70 token_decls_for_prec (84) on left: 76 77 78 on right: 50 78 token_decl_for_prec.1 (85) on left: 79 80 on right: 76 77 78 80 token_decl_for_prec (86) on left: 81 82 on right: 79 80 symbol_decls (87) on left: 83 84 85 on right: 49 85 symbol_decl.1 (88) on left: 86 87 on right: 83 84 85 87 grammar (89) on left: 88 89 on right: 1 89 rules_or_grammar_declaration (90) on left: 90 91 92 on right: 88 89 rules (91) on left: 94 on right: 90 $@4 (92) on left: 93 on right: 94 rhses.1 (93) on left: 95 96 97 on right: 94 96 97 rhs (94) on left: 98 99 100 101 102 103 104 105 106 107 on right: 95 96 99 100 101 102 103 104 105 106 107 named_ref.opt (95) on left: 108 109 on right: 94 99 100 variable (96) on left: 110 on right: 7 value (97) on left: 111 112 113 114 on right: 7 id (98) on left: 115 116 on right: 70 81 118 id_colon (99) on left: 117 on right: 94 symbol (100) on left: 118 119 on right: 34 59 86 87 99 103 string_as_id (101) on left: 120 on right: 74 82 119 epilogue.opt (102) on left: 121 122 on right: 1
0 $accept → . input $end 1 input → . prologue_declarations "%%" grammar epilogue.opt 2 prologue_declarations → . %empty 3 | . prologue_declarations prologue_declaration $default reduce using rule 2 (prologue_declarations) input go to state 1 prologue_declarations go to state 2
0 $accept → input . $end $end shift, and go to state 3
1 input → prologue_declarations . "%%" grammar epilogue.opt 3 prologue_declarations → prologue_declarations . prologue_declaration 4 prologue_declaration → . grammar_declaration 5 | . "%{...%}" 6 | . "%<flag>" 7 | . "%define" variable value 8 | . "%defines" 9 | . "%defines" "string" 10 | . "%error-verbose" 11 | . "%expect" "integer literal" 12 | . "%expect-rr" "integer literal" 13 | . "%file-prefix" "string" 14 | . "%glr-parser" 15 | . "%initial-action" "{...}" 16 | . "%language" "string" 17 | . "%name-prefix" "string" 18 | . "%no-lines" 19 | . "%nondeterministic-parser" 20 | . "%output" "string" 22 | . "%param" $@1 params 23 | . "%pure-parser" 24 | . "%require" "string" 25 | . "%skeleton" "string" 26 | . "%token-table" 27 | . "%verbose" 28 | . "%yacc" 29 | . error ";" 30 | . ";" 33 grammar_declaration → . symbol_declaration 34 | . "%start" symbol 35 | . code_props_type "{...}" generic_symlist 36 | . "%default-prec" 37 | . "%no-default-prec" 38 | . "%code" "{...}" 39 | . "%code" "identifier" "{...}" 40 code_props_type → . "%destructor" 41 | . "%printer" 44 grammar_declaration → . "%union" union_name "{...}" 46 symbol_declaration → . "%nterm" $@2 nterm_decls 48 | . "%token" $@3 token_decls 49 | . "%type" symbol_decls 50 | . precedence_declarator token_decls_for_prec 51 precedence_declarator → . "%left" 52 | . "%right" 53 | . "%nonassoc" 54 | . "%precedence" error shift, and go to state 4 "%token" shift, and go to state 5 "%nterm" shift, and go to state 6 "%type" shift, and go to state 7 "%destructor" shift, and go to state 8 "%printer" shift, and go to state 9 "%left" shift, and go to state 10 "%right" shift, and go to state 11 "%nonassoc" shift, and go to state 12 "%precedence" shift, and go to state 13 "%code" shift, and go to state 14 "%default-prec" shift, and go to state 15 "%define" shift, and go to state 16 "%defines" shift, and go to state 17 "%error-verbose" shift, and go to state 18 "%expect" shift, and go to state 19 "%expect-rr" shift, and go to state 20 "%<flag>" shift, and go to state 21 "%file-prefix" shift, and go to state 22 "%glr-parser" shift, and go to state 23 "%initial-action" shift, and go to state 24 "%language" shift, and go to state 25 "%name-prefix" shift, and go to state 26 "%no-default-prec" shift, and go to state 27 "%no-lines" shift, and go to state 28 "%nondeterministic-parser" shift, and go to state 29 "%output" shift, and go to state 30 "%pure-parser" shift, and go to state 31 "%require" shift, and go to state 32 "%skeleton" shift, and go to state 33 "%start" shift, and go to state 34 "%token-table" shift, and go to state 35 "%verbose" shift, and go to state 36 "%yacc" shift, and go to state 37 "%%" shift, and go to state 38 "%{...%}" shift, and go to state 39 ";" shift, and go to state 40 "%param" shift, and go to state 41 "%union" shift, and go to state 42 prologue_declaration go to state 43 grammar_declaration go to state 44 code_props_type go to state 45 symbol_declaration go to state 46 precedence_declarator go to state 47
0 $accept → input $end . $default accept
29 prologue_declaration → error . ";" ";" shift, and go to state 48
47 $@3 → . %empty 48 symbol_declaration → "%token" . $@3 token_decls $default reduce using rule 47 ($@3) $@3 go to state 49
45 $@2 → . %empty 46 symbol_declaration → "%nterm" . $@2 nterm_decls $default reduce using rule 45 ($@2) $@2 go to state 50
49 symbol_declaration → "%type" . symbol_decls 83 symbol_decls → . symbol_decl.1 84 | . "<tag>" symbol_decl.1 85 | . symbol_decls "<tag>" symbol_decl.1 86 symbol_decl.1 → . symbol 87 | . symbol_decl.1 symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 54 symbol_decls go to state 55 symbol_decl.1 go to state 56 id go to state 57 symbol go to state 58 string_as_id go to state 59
40 code_props_type → "%destructor" . $default reduce using rule 40 (code_props_type)
41 code_props_type → "%printer" . $default reduce using rule 41 (code_props_type)
51 precedence_declarator → "%left" . $default reduce using rule 51 (precedence_declarator)
52 precedence_declarator → "%right" . $default reduce using rule 52 (precedence_declarator)
53 precedence_declarator → "%nonassoc" . $default reduce using rule 53 (precedence_declarator)
54 precedence_declarator → "%precedence" . $default reduce using rule 54 (precedence_declarator)
38 grammar_declaration → "%code" . "{...}" 39 | "%code" . "identifier" "{...}" "{...}" shift, and go to state 60 "identifier" shift, and go to state 61
36 grammar_declaration → "%default-prec" . $default reduce using rule 36 (grammar_declaration)
7 prologue_declaration → "%define" . variable value 110 variable → . "identifier" "identifier" shift, and go to state 62 variable go to state 63
8 prologue_declaration → "%defines" . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 9 | "%defines" . "string" "string" shift, and go to state 64 $default reduce using rule 8 (prologue_declaration)
10 prologue_declaration → "%error-verbose" . $default reduce using rule 10 (prologue_declaration)
11 prologue_declaration → "%expect" . "integer literal" "integer literal" shift, and go to state 65
12 prologue_declaration → "%expect-rr" . "integer literal" "integer literal" shift, and go to state 66
6 prologue_declaration → "%<flag>" . $default reduce using rule 6 (prologue_declaration)
13 prologue_declaration → "%file-prefix" . "string" "string" shift, and go to state 67
14 prologue_declaration → "%glr-parser" . $default reduce using rule 14 (prologue_declaration)
15 prologue_declaration → "%initial-action" . "{...}" "{...}" shift, and go to state 68
16 prologue_declaration → "%language" . "string" "string" shift, and go to state 69
17 prologue_declaration → "%name-prefix" . "string" "string" shift, and go to state 70
37 grammar_declaration → "%no-default-prec" . $default reduce using rule 37 (grammar_declaration)
18 prologue_declaration → "%no-lines" . $default reduce using rule 18 (prologue_declaration)
19 prologue_declaration → "%nondeterministic-parser" . $default reduce using rule 19 (prologue_declaration)
20 prologue_declaration → "%output" . "string" "string" shift, and go to state 71
23 prologue_declaration → "%pure-parser" . $default reduce using rule 23 (prologue_declaration)
24 prologue_declaration → "%require" . "string" "string" shift, and go to state 72
25 prologue_declaration → "%skeleton" . "string" "string" shift, and go to state 73
34 grammar_declaration → "%start" . symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 id go to state 57 symbol go to state 74 string_as_id go to state 59
26 prologue_declaration → "%token-table" . $default reduce using rule 26 (prologue_declaration)
27 prologue_declaration → "%verbose" . $default reduce using rule 27 (prologue_declaration)
28 prologue_declaration → "%yacc" . $default reduce using rule 28 (prologue_declaration)
1 input → prologue_declarations "%%" . grammar epilogue.opt 33 grammar_declaration → . symbol_declaration 34 | . "%start" symbol 35 | . code_props_type "{...}" generic_symlist 36 | . "%default-prec" 37 | . "%no-default-prec" 38 | . "%code" "{...}" 39 | . "%code" "identifier" "{...}" 40 code_props_type → . "%destructor" 41 | . "%printer" 44 grammar_declaration → . "%union" union_name "{...}" 46 symbol_declaration → . "%nterm" $@2 nterm_decls 48 | . "%token" $@3 token_decls 49 | . "%type" symbol_decls 50 | . precedence_declarator token_decls_for_prec 51 precedence_declarator → . "%left" 52 | . "%right" 53 | . "%nonassoc" 54 | . "%precedence" 88 grammar → . rules_or_grammar_declaration 89 | . grammar rules_or_grammar_declaration 90 rules_or_grammar_declaration → . rules 91 | . grammar_declaration ";" 92 | . error ";" 94 rules → . id_colon named_ref.opt $@4 ":" rhses.1 117 id_colon → . "identifier:" error shift, and go to state 75 "%token" shift, and go to state 5 "%nterm" shift, and go to state 6 "%type" shift, and go to state 7 "%destructor" shift, and go to state 8 "%printer" shift, and go to state 9 "%left" shift, and go to state 10 "%right" shift, and go to state 11 "%nonassoc" shift, and go to state 12 "%precedence" shift, and go to state 13 "%code" shift, and go to state 14 "%default-prec" shift, and go to state 15 "%no-default-prec" shift, and go to state 27 "%start" shift, and go to state 34 "identifier:" shift, and go to state 76 "%union" shift, and go to state 42 grammar_declaration go to state 77 code_props_type go to state 45 symbol_declaration go to state 46 precedence_declarator go to state 47 grammar go to state 78 rules_or_grammar_declaration go to state 79 rules go to state 80 id_colon go to state 81
5 prologue_declaration → "%{...%}" . $default reduce using rule 5 (prologue_declaration)
30 prologue_declaration → ";" . $default reduce using rule 30 (prologue_declaration)
21 $@1 → . %empty 22 prologue_declaration → "%param" . $@1 params $default reduce using rule 21 ($@1) $@1 go to state 82
42 union_name → . %empty ["{...}"] 43 | . "identifier" 44 grammar_declaration → "%union" . union_name "{...}" "identifier" shift, and go to state 83 $default reduce using rule 42 (union_name) union_name go to state 84
3 prologue_declarations → prologue_declarations prologue_declaration . $default reduce using rule 3 (prologue_declarations)
4 prologue_declaration → grammar_declaration . $default reduce using rule 4 (prologue_declaration)
35 grammar_declaration → code_props_type . "{...}" generic_symlist "{...}" shift, and go to state 85
33 grammar_declaration → symbol_declaration . $default reduce using rule 33 (grammar_declaration)
50 symbol_declaration → precedence_declarator . token_decls_for_prec 76 token_decls_for_prec → . token_decl_for_prec.1 77 | . "<tag>" token_decl_for_prec.1 78 | . token_decls_for_prec "<tag>" token_decl_for_prec.1 79 token_decl_for_prec.1 → . token_decl_for_prec 80 | . token_decl_for_prec.1 token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 86 token_decls_for_prec go to state 87 token_decl_for_prec.1 go to state 88 token_decl_for_prec go to state 89 id go to state 90 string_as_id go to state 91
29 prologue_declaration → error ";" . $default reduce using rule 29 (prologue_declaration)
48 symbol_declaration → "%token" $@3 . token_decls 65 token_decls → . token_decl.1 66 | . "<tag>" token_decl.1 67 | . token_decls "<tag>" token_decl.1 68 token_decl.1 → . token_decl 69 | . token_decl.1 token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 92 token_decls go to state 93 token_decl.1 go to state 94 token_decl go to state 95 id go to state 96
46 symbol_declaration → "%nterm" $@2 . nterm_decls 64 nterm_decls → . token_decls 65 token_decls → . token_decl.1 66 | . "<tag>" token_decl.1 67 | . token_decls "<tag>" token_decl.1 68 token_decl.1 → . token_decl 69 | . token_decl.1 token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 92 nterm_decls go to state 97 token_decls go to state 98 token_decl.1 go to state 94 token_decl go to state 95 id go to state 96
120 string_as_id → "string" . $default reduce using rule 120 (string_as_id)
116 id → "character literal" . $default reduce using rule 116 (id)
115 id → "identifier" . $default reduce using rule 115 (id)
84 symbol_decls → "<tag>" . symbol_decl.1 86 symbol_decl.1 → . symbol 87 | . symbol_decl.1 symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 symbol_decl.1 go to state 99 id go to state 57 symbol go to state 58 string_as_id go to state 59
49 symbol_declaration → "%type" symbol_decls . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 85 symbol_decls → symbol_decls . "<tag>" symbol_decl.1 "<tag>" shift, and go to state 100 $default reduce using rule 49 (symbol_declaration)
83 symbol_decls → symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 87 symbol_decl.1 → symbol_decl.1 . symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 83 (symbol_decls) id go to state 57 symbol go to state 101 string_as_id go to state 59
118 symbol → id . $default reduce using rule 118 (symbol)
86 symbol_decl.1 → symbol . $default reduce using rule 86 (symbol_decl.1)
119 symbol → string_as_id . $default reduce using rule 119 (symbol)
38 grammar_declaration → "%code" "{...}" . $default reduce using rule 38 (grammar_declaration)
39 grammar_declaration → "%code" "identifier" . "{...}" "{...}" shift, and go to state 102
110 variable → "identifier" . $default reduce using rule 110 (variable)
7 prologue_declaration → "%define" variable . value 111 value → . %empty [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 112 | . "identifier" 113 | . "string" 114 | . "{...}" "string" shift, and go to state 103 "{...}" shift, and go to state 104 "identifier" shift, and go to state 105 $default reduce using rule 111 (value) value go to state 106
9 prologue_declaration → "%defines" "string" . $default reduce using rule 9 (prologue_declaration)
11 prologue_declaration → "%expect" "integer literal" . $default reduce using rule 11 (prologue_declaration)
12 prologue_declaration → "%expect-rr" "integer literal" . $default reduce using rule 12 (prologue_declaration)
13 prologue_declaration → "%file-prefix" "string" . $default reduce using rule 13 (prologue_declaration)
15 prologue_declaration → "%initial-action" "{...}" . $default reduce using rule 15 (prologue_declaration)
16 prologue_declaration → "%language" "string" . $default reduce using rule 16 (prologue_declaration)
17 prologue_declaration → "%name-prefix" "string" . $default reduce using rule 17 (prologue_declaration)
20 prologue_declaration → "%output" "string" . $default reduce using rule 20 (prologue_declaration)
24 prologue_declaration → "%require" "string" . $default reduce using rule 24 (prologue_declaration)
25 prologue_declaration → "%skeleton" "string" . $default reduce using rule 25 (prologue_declaration)
34 grammar_declaration → "%start" symbol . $default reduce using rule 34 (grammar_declaration)
92 rules_or_grammar_declaration → error . ";" ";" shift, and go to state 107
117 id_colon → "identifier:" . $default reduce using rule 117 (id_colon)
91 rules_or_grammar_declaration → grammar_declaration . ";" ";" shift, and go to state 108
1 input → prologue_declarations "%%" grammar . epilogue.opt 33 grammar_declaration → . symbol_declaration 34 | . "%start" symbol 35 | . code_props_type "{...}" generic_symlist 36 | . "%default-prec" 37 | . "%no-default-prec" 38 | . "%code" "{...}" 39 | . "%code" "identifier" "{...}" 40 code_props_type → . "%destructor" 41 | . "%printer" 44 grammar_declaration → . "%union" union_name "{...}" 46 symbol_declaration → . "%nterm" $@2 nterm_decls 48 | . "%token" $@3 token_decls 49 | . "%type" symbol_decls 50 | . precedence_declarator token_decls_for_prec 51 precedence_declarator → . "%left" 52 | . "%right" 53 | . "%nonassoc" 54 | . "%precedence" 89 grammar → grammar . rules_or_grammar_declaration 90 rules_or_grammar_declaration → . rules 91 | . grammar_declaration ";" 92 | . error ";" 94 rules → . id_colon named_ref.opt $@4 ":" rhses.1 117 id_colon → . "identifier:" 121 epilogue.opt → . %empty [$end] 122 | . "%%" "epilogue" error shift, and go to state 75 "%token" shift, and go to state 5 "%nterm" shift, and go to state 6 "%type" shift, and go to state 7 "%destructor" shift, and go to state 8 "%printer" shift, and go to state 9 "%left" shift, and go to state 10 "%right" shift, and go to state 11 "%nonassoc" shift, and go to state 12 "%precedence" shift, and go to state 13 "%code" shift, and go to state 14 "%default-prec" shift, and go to state 15 "%no-default-prec" shift, and go to state 27 "%start" shift, and go to state 34 "identifier:" shift, and go to state 76 "%%" shift, and go to state 109 "%union" shift, and go to state 42 $end reduce using rule 121 (epilogue.opt) grammar_declaration go to state 77 code_props_type go to state 45 symbol_declaration go to state 46 precedence_declarator go to state 47 rules_or_grammar_declaration go to state 110 rules go to state 80 id_colon go to state 81 epilogue.opt go to state 111
88 grammar → rules_or_grammar_declaration . $default reduce using rule 88 (grammar)
90 rules_or_grammar_declaration → rules . $default reduce using rule 90 (rules_or_grammar_declaration)
94 rules → id_colon . named_ref.opt $@4 ":" rhses.1 108 named_ref.opt → . %empty [":"] 109 | . "[identifier]" "[identifier]" shift, and go to state 112 $default reduce using rule 108 (named_ref.opt) named_ref.opt go to state 113
22 prologue_declaration → "%param" $@1 . params 31 params → . params "{...}" 32 | . "{...}" "{...}" shift, and go to state 114 params go to state 115
43 union_name → "identifier" . $default reduce using rule 43 (union_name)
44 grammar_declaration → "%union" union_name . "{...}" "{...}" shift, and go to state 116
35 grammar_declaration → code_props_type "{...}" . generic_symlist 57 generic_symlist → . generic_symlist_item 58 | . generic_symlist generic_symlist_item 59 generic_symlist_item → . symbol 60 | . tag 61 tag → . "<tag>" 62 | . "<*>" 63 | . "<>" 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 117 "<*>" shift, and go to state 118 "<>" shift, and go to state 119 generic_symlist go to state 120 generic_symlist_item go to state 121 tag go to state 122 id go to state 57 symbol go to state 123 string_as_id go to state 59
77 token_decls_for_prec → "<tag>" . token_decl_for_prec.1 79 token_decl_for_prec.1 → . token_decl_for_prec 80 | . token_decl_for_prec.1 token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 token_decl_for_prec.1 go to state 124 token_decl_for_prec go to state 89 id go to state 90 string_as_id go to state 91
50 symbol_declaration → precedence_declarator token_decls_for_prec . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 78 token_decls_for_prec → token_decls_for_prec . "<tag>" token_decl_for_prec.1 "<tag>" shift, and go to state 125 $default reduce using rule 50 (symbol_declaration)
76 token_decls_for_prec → token_decl_for_prec.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 80 token_decl_for_prec.1 → token_decl_for_prec.1 . token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 76 (token_decls_for_prec) token_decl_for_prec go to state 126 id go to state 90 string_as_id go to state 91
79 token_decl_for_prec.1 → token_decl_for_prec . $default reduce using rule 79 (token_decl_for_prec.1)
71 int.opt → . %empty [error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 72 | . "integer literal" 81 token_decl_for_prec → id . int.opt "integer literal" shift, and go to state 127 $default reduce using rule 71 (int.opt) int.opt go to state 128
82 token_decl_for_prec → string_as_id . $default reduce using rule 82 (token_decl_for_prec)
66 token_decls → "<tag>" . token_decl.1 68 token_decl.1 → . token_decl 69 | . token_decl.1 token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 token_decl.1 go to state 129 token_decl go to state 95 id go to state 96
48 symbol_declaration → "%token" $@3 token_decls . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 67 token_decls → token_decls . "<tag>" token_decl.1 "<tag>" shift, and go to state 130 $default reduce using rule 48 (symbol_declaration)
65 token_decls → token_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 69 token_decl.1 → token_decl.1 . token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 65 (token_decls) token_decl go to state 131 id go to state 96
68 token_decl.1 → token_decl . $default reduce using rule 68 (token_decl.1)
70 token_decl → id . int.opt alias 71 int.opt → . %empty [error, "string", "translatable string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 72 | . "integer literal" "integer literal" shift, and go to state 127 $default reduce using rule 71 (int.opt) int.opt go to state 132
46 symbol_declaration → "%nterm" $@2 nterm_decls . $default reduce using rule 46 (symbol_declaration)
64 nterm_decls → token_decls . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 67 token_decls → token_decls . "<tag>" token_decl.1 "<tag>" shift, and go to state 130 $default reduce using rule 64 (nterm_decls)
84 symbol_decls → "<tag>" symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 87 symbol_decl.1 → symbol_decl.1 . symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 84 (symbol_decls) id go to state 57 symbol go to state 101 string_as_id go to state 59
85 symbol_decls → symbol_decls "<tag>" . symbol_decl.1 86 symbol_decl.1 → . symbol 87 | . symbol_decl.1 symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 symbol_decl.1 go to state 133 id go to state 57 symbol go to state 58 string_as_id go to state 59
87 symbol_decl.1 → symbol_decl.1 symbol . $default reduce using rule 87 (symbol_decl.1)
39 grammar_declaration → "%code" "identifier" "{...}" . $default reduce using rule 39 (grammar_declaration)
113 value → "string" . $default reduce using rule 113 (value)
114 value → "{...}" . $default reduce using rule 114 (value)
112 value → "identifier" . $default reduce using rule 112 (value)
7 prologue_declaration → "%define" variable value . $default reduce using rule 7 (prologue_declaration)
92 rules_or_grammar_declaration → error ";" . $default reduce using rule 92 (rules_or_grammar_declaration)
91 rules_or_grammar_declaration → grammar_declaration ";" . $default reduce using rule 91 (rules_or_grammar_declaration)
122 epilogue.opt → "%%" . "epilogue" "epilogue" shift, and go to state 134
89 grammar → grammar rules_or_grammar_declaration . $default reduce using rule 89 (grammar)
1 input → prologue_declarations "%%" grammar epilogue.opt . $default reduce using rule 1 (input)
109 named_ref.opt → "[identifier]" . $default reduce using rule 109 (named_ref.opt)
93 $@4 → . %empty 94 rules → id_colon named_ref.opt . $@4 ":" rhses.1 $default reduce using rule 93 ($@4) $@4 go to state 135
32 params → "{...}" . $default reduce using rule 32 (params)
22 prologue_declaration → "%param" $@1 params . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 31 params → params . "{...}" "{...}" shift, and go to state 136 $default reduce using rule 22 (prologue_declaration)
44 grammar_declaration → "%union" union_name "{...}" . $default reduce using rule 44 (grammar_declaration)
61 tag → "<tag>" . $default reduce using rule 61 (tag)
62 tag → "<*>" . $default reduce using rule 62 (tag)
63 tag → "<>" . $default reduce using rule 63 (tag)
35 grammar_declaration → code_props_type "{...}" generic_symlist . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "%param", "%union"] 58 generic_symlist → generic_symlist . generic_symlist_item 59 generic_symlist_item → . symbol 60 | . tag 61 tag → . "<tag>" 62 | . "<*>" 63 | . "<>" 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 117 "<*>" shift, and go to state 118 "<>" shift, and go to state 119 $default reduce using rule 35 (grammar_declaration) generic_symlist_item go to state 137 tag go to state 122 id go to state 57 symbol go to state 123 string_as_id go to state 59
57 generic_symlist → generic_symlist_item . $default reduce using rule 57 (generic_symlist)
60 generic_symlist_item → tag . $default reduce using rule 60 (generic_symlist_item)
59 generic_symlist_item → symbol . $default reduce using rule 59 (generic_symlist_item)
77 token_decls_for_prec → "<tag>" token_decl_for_prec.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 80 token_decl_for_prec.1 → token_decl_for_prec.1 . token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 77 (token_decls_for_prec) token_decl_for_prec go to state 126 id go to state 90 string_as_id go to state 91
78 token_decls_for_prec → token_decls_for_prec "<tag>" . token_decl_for_prec.1 79 token_decl_for_prec.1 → . token_decl_for_prec 80 | . token_decl_for_prec.1 token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 token_decl_for_prec.1 go to state 138 token_decl_for_prec go to state 89 id go to state 90 string_as_id go to state 91
80 token_decl_for_prec.1 → token_decl_for_prec.1 token_decl_for_prec . $default reduce using rule 80 (token_decl_for_prec.1)
72 int.opt → "integer literal" . $default reduce using rule 72 (int.opt)
81 token_decl_for_prec → id int.opt . $default reduce using rule 81 (token_decl_for_prec)
66 token_decls → "<tag>" token_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 69 token_decl.1 → token_decl.1 . token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 66 (token_decls) token_decl go to state 131 id go to state 96
67 token_decls → token_decls "<tag>" . token_decl.1 68 token_decl.1 → . token_decl 69 | . token_decl.1 token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 token_decl.1 go to state 139 token_decl go to state 95 id go to state 96
69 token_decl.1 → token_decl.1 token_decl . $default reduce using rule 69 (token_decl.1)
70 token_decl → id int.opt . alias 73 alias → . %empty [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 74 | . string_as_id 75 | . "translatable string" 120 string_as_id → . "string" "string" shift, and go to state 51 "translatable string" shift, and go to state 140 $default reduce using rule 73 (alias) alias go to state 141 string_as_id go to state 142
85 symbol_decls → symbol_decls "<tag>" symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 87 symbol_decl.1 → symbol_decl.1 . symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 85 (symbol_decls) id go to state 57 symbol go to state 101 string_as_id go to state 59
122 epilogue.opt → "%%" "epilogue" . $default reduce using rule 122 (epilogue.opt)
94 rules → id_colon named_ref.opt $@4 . ":" rhses.1 ":" shift, and go to state 143
31 params → params "{...}" . $default reduce using rule 31 (params)
58 generic_symlist → generic_symlist generic_symlist_item . $default reduce using rule 58 (generic_symlist)
78 token_decls_for_prec → token_decls_for_prec "<tag>" token_decl_for_prec.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 80 token_decl_for_prec.1 → token_decl_for_prec.1 . token_decl_for_prec 81 token_decl_for_prec → . id int.opt 82 | . string_as_id 115 id → . "identifier" 116 | . "character literal" 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 78 (token_decls_for_prec) token_decl_for_prec go to state 126 id go to state 90 string_as_id go to state 91
67 token_decls → token_decls "<tag>" token_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%<flag>", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "<tag>", "%param", "%union"] 69 token_decl.1 → token_decl.1 . token_decl 70 token_decl → . id int.opt alias 115 id → . "identifier" 116 | . "character literal" "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 $default reduce using rule 67 (token_decls) token_decl go to state 131 id go to state 96
75 alias → "translatable string" . $default reduce using rule 75 (alias)
70 token_decl → id int.opt alias . $default reduce using rule 70 (token_decl)
74 alias → string_as_id . $default reduce using rule 74 (alias)
94 rules → id_colon named_ref.opt $@4 ":" . rhses.1 95 rhses.1 → . rhs 96 | . rhses.1 "|" rhs 97 | . rhses.1 ";" 98 rhs → . %empty 99 | . rhs symbol named_ref.opt 100 | . rhs tag.opt "{...}" named_ref.opt 101 | . rhs "%?{...}" 102 | . rhs "%empty" 103 | . rhs "%prec" symbol 104 | . rhs "%dprec" "integer literal" 105 | . rhs "%merge" "<tag>" 106 | . rhs "%expect" "integer literal" 107 | . rhs "%expect-rr" "integer literal" $default reduce using rule 98 (rhs) rhses.1 go to state 144 rhs go to state 145
94 rules → id_colon named_ref.opt $@4 ":" rhses.1 . [$end, error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%no-default-prec", "%start", "identifier:", "%%", "%union"] 96 rhses.1 → rhses.1 . "|" rhs 97 | rhses.1 . ";" "|" shift, and go to state 146 ";" shift, and go to state 147 $default reduce using rule 94 (rules)
55 tag.opt → . %empty ["{...}"] 56 | . "<tag>" 95 rhses.1 → rhs . [$end, error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%no-default-prec", "%start", "identifier:", "%%", "|", ";", "%union"] 99 rhs → rhs . symbol named_ref.opt 100 | rhs . tag.opt "{...}" named_ref.opt 101 | rhs . "%?{...}" 102 | rhs . "%empty" 103 | rhs . "%prec" symbol 104 | rhs . "%dprec" "integer literal" 105 | rhs . "%merge" "<tag>" 106 | rhs . "%expect" "integer literal" 107 | rhs . "%expect-rr" "integer literal" 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "%prec" shift, and go to state 148 "%dprec" shift, and go to state 149 "%merge" shift, and go to state 150 "%expect" shift, and go to state 151 "%expect-rr" shift, and go to state 152 "%?{...}" shift, and go to state 153 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 154 "%empty" shift, and go to state 155 "{...}" reduce using rule 55 (tag.opt) $default reduce using rule 95 (rhses.1) tag.opt go to state 156 id go to state 57 symbol go to state 157 string_as_id go to state 59
96 rhses.1 → rhses.1 "|" . rhs 98 rhs → . %empty 99 | . rhs symbol named_ref.opt 100 | . rhs tag.opt "{...}" named_ref.opt 101 | . rhs "%?{...}" 102 | . rhs "%empty" 103 | . rhs "%prec" symbol 104 | . rhs "%dprec" "integer literal" 105 | . rhs "%merge" "<tag>" 106 | . rhs "%expect" "integer literal" 107 | . rhs "%expect-rr" "integer literal" $default reduce using rule 98 (rhs) rhs go to state 158
97 rhses.1 → rhses.1 ";" . $default reduce using rule 97 (rhses.1)
103 rhs → rhs "%prec" . symbol 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 id go to state 57 symbol go to state 159 string_as_id go to state 59
104 rhs → rhs "%dprec" . "integer literal" "integer literal" shift, and go to state 160
105 rhs → rhs "%merge" . "<tag>" "<tag>" shift, and go to state 161
106 rhs → rhs "%expect" . "integer literal" "integer literal" shift, and go to state 162
107 rhs → rhs "%expect-rr" . "integer literal" "integer literal" shift, and go to state 163
101 rhs → rhs "%?{...}" . $default reduce using rule 101 (rhs)
56 tag.opt → "<tag>" . $default reduce using rule 56 (tag.opt)
102 rhs → rhs "%empty" . $default reduce using rule 102 (rhs)
100 rhs → rhs tag.opt . "{...}" named_ref.opt "{...}" shift, and go to state 164
99 rhs → rhs symbol . named_ref.opt 108 named_ref.opt → . %empty [$end, error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "character literal", "identifier", "identifier:", "%%", "|", ";", "<tag>", "%union", "%empty"] 109 | . "[identifier]" "[identifier]" shift, and go to state 112 $default reduce using rule 108 (named_ref.opt) named_ref.opt go to state 165
55 tag.opt → . %empty ["{...}"] 56 | . "<tag>" 96 rhses.1 → rhses.1 "|" rhs . [$end, error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%no-default-prec", "%start", "identifier:", "%%", "|", ";", "%union"] 99 rhs → rhs . symbol named_ref.opt 100 | rhs . tag.opt "{...}" named_ref.opt 101 | rhs . "%?{...}" 102 | rhs . "%empty" 103 | rhs . "%prec" symbol 104 | rhs . "%dprec" "integer literal" 105 | rhs . "%merge" "<tag>" 106 | rhs . "%expect" "integer literal" 107 | rhs . "%expect-rr" "integer literal" 115 id → . "identifier" 116 | . "character literal" 118 symbol → . id 119 | . string_as_id 120 string_as_id → . "string" "string" shift, and go to state 51 "%prec" shift, and go to state 148 "%dprec" shift, and go to state 149 "%merge" shift, and go to state 150 "%expect" shift, and go to state 151 "%expect-rr" shift, and go to state 152 "%?{...}" shift, and go to state 153 "character literal" shift, and go to state 52 "identifier" shift, and go to state 53 "<tag>" shift, and go to state 154 "%empty" shift, and go to state 155 "{...}" reduce using rule 55 (tag.opt) $default reduce using rule 96 (rhses.1) tag.opt go to state 156 id go to state 57 symbol go to state 157 string_as_id go to state 59
103 rhs → rhs "%prec" symbol . $default reduce using rule 103 (rhs)
104 rhs → rhs "%dprec" "integer literal" . $default reduce using rule 104 (rhs)
105 rhs → rhs "%merge" "<tag>" . $default reduce using rule 105 (rhs)
106 rhs → rhs "%expect" "integer literal" . $default reduce using rule 106 (rhs)
107 rhs → rhs "%expect-rr" "integer literal" . $default reduce using rule 107 (rhs)
100 rhs → rhs tag.opt "{...}" . named_ref.opt 108 named_ref.opt → . %empty [$end, error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "character literal", "identifier", "identifier:", "%%", "|", ";", "<tag>", "%union", "%empty"] 109 | . "[identifier]" "[identifier]" shift, and go to state 112 $default reduce using rule 108 (named_ref.opt) named_ref.opt go to state 166
99 rhs → rhs symbol named_ref.opt . $default reduce using rule 99 (rhs)
100 rhs → rhs tag.opt "{...}" named_ref.opt . $default reduce using rule 100 (rhs)