  Copyright (C) 2015 Matthew R. Wette
  
  This software is covered by the GNU GENERAL PUBLIC LICENCE, Version 3,
  or any later version published by the Free Software Foundation.  See the
  file COPYING included with the this distribution.

0 $start => translation-unit-proxy
1 translation-unit-proxy => translation-unit
2 primary-expression => identifier
3 primary-expression => constant
4 primary-expression => string-literal
5 primary-expression => "(" expression ")"
6 postfix-expression => primary-expression
7 postfix-expression => postfix-expression "[" expression "]"
8 postfix-expression => postfix-expression "(" argument-expression-list ")"
9 postfix-expression => postfix-expression "(" ")"
10 postfix-expression => postfix-expression "." identifier
11 postfix-expression => postfix-expression "->" identifier
12 postfix-expression => postfix-expression "++"
13 postfix-expression => postfix-expression "--"
14 postfix-expression => "(" type-name ")" "{" initializer-list "}"
15 postfix-expression => "(" type-name ")" "{" initializer-list "," "}"
16 argument-expression-list => assignment-expression
17 argument-expression-list => argument-expression-list "," assignment-expression
18 argument-expression-list => declaration-specifiers abstract-declarator
19 argument-expression-list => argument-expression-list "," declaration-specifiers abstract-declarator
20 unary-expression => postfix-expression
21 unary-expression => "++" unary-expression
22 unary-expression => "--" unary-expression
23 unary-expression => unary-operator cast-expression
24 unary-expression => "sizeof" unary-expression
25 unary-expression => "sizeof" "(" type-name ")"
26 unary-operator => "&"
27 unary-operator => "*"
28 unary-operator => "+"
29 unary-operator => "-"
30 unary-operator => "~"
31 unary-operator => "!"
32 cast-expression => unary-expression
33 cast-expression => "(" type-name ")" cast-expression
34 multiplicative-expression => cast-expression
35 multiplicative-expression => multiplicative-expression "*" cast-expression
36 multiplicative-expression => multiplicative-expression "/" cast-expression
37 multiplicative-expression => multiplicative-expression "%" cast-expression
38 additive-expression => multiplicative-expression
39 additive-expression => additive-expression "+" multiplicative-expression
40 additive-expression => additive-expression "-" multiplicative-expression
41 shift-expression => additive-expression
42 shift-expression => shift-expression "<<" additive-expression
43 shift-expression => shift-expression ">>" additive-expression
44 relational-expression => shift-expression
45 relational-expression => relational-expression "<" shift-expression
46 relational-expression => relational-expression ">" shift-expression
47 relational-expression => relational-expression "<=" shift-expression
48 relational-expression => relational-expression ">=" shift-expression
49 equality-expression => relational-expression
50 equality-expression => equality-expression "==" relational-expression
51 equality-expression => equality-expression "!=" relational-expression
52 bitwise-and-expression => equality-expression
53 bitwise-and-expression => bitwise-and-expression "&" equality-expression
54 bitwise-xor-expression => bitwise-and-expression
55 bitwise-xor-expression => bitwise-xor-expression "^" bitwise-and-expression
56 bitwise-or-expression => bitwise-xor-expression
57 bitwise-or-expression => bitwise-or-expression "|" bitwise-xor-expression
58 logical-and-expression => bitwise-or-expression
59 logical-and-expression => logical-and-expression "&&" bitwise-or-expression
60 logical-or-expression => logical-and-expression
61 logical-or-expression => logical-or-expression "||" logical-and-expression
62 conditional-expression => logical-or-expression
63 conditional-expression => logical-or-expression "?" expression ":" conditional-expression
64 assignment-expression => conditional-expression
65 assignment-expression => unary-expression assignment-operator assignment-expression
66 assignment-operator => "="
67 assignment-operator => "+="
68 assignment-operator => "-="
69 assignment-operator => "*="
70 assignment-operator => "/="
71 assignment-operator => "%="
72 assignment-operator => "<<="
73 assignment-operator => ">>="
74 assignment-operator => "&="
75 assignment-operator => "^="
76 assignment-operator => "|="
77 expression => assignment-expression
78 expression => expression "," assignment-expression
79 constant-expression => conditional-expression
80 declaration => declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
81 declaration => declaration-specifiers ";" opt-code-comment
82 $P1 =>
83 declaration-specifiers => storage-class-specifier
84 declaration-specifiers => storage-class-specifier declaration-specifiers
85 declaration-specifiers => type-specifier
86 declaration-specifiers => type-specifier declaration-specifiers
87 declaration-specifiers => type-qualifier
88 declaration-specifiers => type-qualifier declaration-specifiers
89 declaration-specifiers => function-specifier
90 declaration-specifiers => function-specifier declaration-specifiers
91 init-declarator-list => init-declarator
92 init-declarator-list => init-declarator-list "," init-declarator
93 init-declarator => declarator
94 init-declarator => declarator "=" initializer
95 storage-class-specifier => "auto"
96 storage-class-specifier => "extern"
97 storage-class-specifier => "register"
98 storage-class-specifier => "static"
99 storage-class-specifier => "typedef"
100 type-specifier => "void"
101 type-specifier => fixed-type-specifier
102 type-specifier => float-type-specifier
103 type-specifier => "_Bool"
104 type-specifier => complex-type-specifier
105 type-specifier => struct-or-union-specifier
106 type-specifier => enum-specifier
107 type-specifier => typedef-name
108 fixed-type-specifier => "short"
109 fixed-type-specifier => "short" "int"
110 fixed-type-specifier => "signed" "short"
111 fixed-type-specifier => "signed" "short" "int"
112 fixed-type-specifier => "int"
113 fixed-type-specifier => "signed"
114 fixed-type-specifier => "signed" "int"
115 fixed-type-specifier => "long"
116 fixed-type-specifier => "long" "int"
117 fixed-type-specifier => "signed" "long"
118 fixed-type-specifier => "signed" "long" "int"
119 fixed-type-specifier => "long" "long"
120 fixed-type-specifier => "long" "long" "int"
121 fixed-type-specifier => "signed" "long" "long"
122 fixed-type-specifier => "signed" "long" "long" "int"
123 fixed-type-specifier => "unsigned" "short" "int"
124 fixed-type-specifier => "unsigned" "short"
125 fixed-type-specifier => "unsigned" "int"
126 fixed-type-specifier => "unsigned"
127 fixed-type-specifier => "unsigned" "long" "int"
128 fixed-type-specifier => "unsigned" "long"
129 fixed-type-specifier => "unsigned" "long" "long" "int"
130 fixed-type-specifier => "unsigned" "long" "long"
131 fixed-type-specifier => "char"
132 fixed-type-specifier => "signed" "char"
133 fixed-type-specifier => "unsigned" "char"
134 float-type-specifier => "float"
135 float-type-specifier => "double"
136 float-type-specifier => "long" "double"
137 complex-type-specifier => "_Complex"
138 complex-type-specifier => "float" "_Complex"
139 complex-type-specifier => "double" "_Complex"
140 complex-type-specifier => "long" "double" "_Complex"
141 struct-or-union-specifier => "struct" identifier "{" struct-declaration-list "}"
142 struct-or-union-specifier => "struct" "{" struct-declaration-list "}"
143 struct-or-union-specifier => "struct" identifier
144 struct-or-union-specifier => "union" identifier "{" struct-declaration-list "}"
145 struct-or-union-specifier => "union" "{" struct-declaration-list "}"
146 struct-or-union-specifier => "union" identifier
147 struct-declaration-list => struct-declaration
148 struct-declaration-list => lone-comment
149 struct-declaration-list => struct-declaration-list struct-declaration
150 struct-declaration-list => struct-declaration-list lone-comment
151 struct-declaration => specifier-qualifier-list struct-declarator-list ";" opt-code-comment
152 specifier-qualifier-list => type-specifier specifier-qualifier-list
153 specifier-qualifier-list => type-specifier
154 specifier-qualifier-list => type-qualifier specifier-qualifier-list
155 specifier-qualifier-list => type-qualifier
156 struct-declarator-list => struct-declarator
157 struct-declarator-list => struct-declarator-list "," struct-declarator
158 struct-declarator => declarator
159 struct-declarator => declarator ":" constant-expression
160 struct-declarator => ":" constant-expression
161 enum-specifier => "enum" identifier "{" enumerator-list "}"
162 enum-specifier => "enum" identifier "{" enumerator-list "," "}"
163 enum-specifier => "enum" "{" enumerator-list "}"
164 enum-specifier => "enum" "{" enumerator-list "," "}"
165 enum-specifier => "enum" identifier
166 enumerator-list => enumerator
167 enumerator-list => enumerator-list "," enumerator
168 enumerator => identifier
169 enumerator => identifier "=" constant-expression
170 type-qualifier => "const"
171 type-qualifier => "volatile"
172 type-qualifier => "restrict"
173 function-specifier => "inline"
174 declarator => pointer direct-declarator
175 declarator => direct-declarator
176 direct-declarator => identifier
177 direct-declarator => "(" declarator ")"
178 direct-declarator => direct-declarator "[" type-qualifier-list assignment-expression "]"
179 direct-declarator => direct-declarator "[" type-qualifier-list "]"
180 direct-declarator => direct-declarator "[" assignment-expression "]"
181 direct-declarator => direct-declarator "[" "]"
182 direct-declarator => direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
183 direct-declarator => direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
184 direct-declarator => direct-declarator "[" type-qualifier-list "*" "]"
185 direct-declarator => direct-declarator "[" "*" "]"
186 direct-declarator => direct-declarator "(" parameter-type-list ")"
187 direct-declarator => direct-declarator "(" identifier-list ")"
188 direct-declarator => direct-declarator "(" ")"
189 pointer => "*" type-qualifier-list
190 pointer => "*"
191 pointer => "*" type-qualifier-list pointer
192 pointer => "*" pointer
193 type-qualifier-list => type-qualifier
194 type-qualifier-list => type-qualifier-list type-qualifier
195 parameter-type-list => parameter-list
196 parameter-type-list => parameter-list "," "..."
197 parameter-list => parameter-declaration
198 parameter-list => parameter-list "," parameter-declaration
199 parameter-declaration => declaration-specifiers declarator
200 parameter-declaration => declaration-specifiers abstract-declarator
201 parameter-declaration => declaration-specifiers
202 identifier-list => identifier
203 identifier-list => identifier-list "," identifier
204 type-name => specifier-qualifier-list abstract-declarator
205 type-name => declaration-specifiers
206 abstract-declarator => pointer
207 abstract-declarator => pointer direct-abstract-declarator
208 abstract-declarator => direct-abstract-declarator
209 direct-abstract-declarator => "(" abstract-declarator ")"
210 direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
211 direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "]"
212 direct-abstract-declarator => direct-abstract-declarator "[" assignment-expression "]"
213 direct-abstract-declarator => direct-abstract-declarator "[" "]"
214 direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
215 direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list "]"
216 direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
217 direct-abstract-declarator => "[" type-qualifier-list assignment-expression "]"
218 direct-abstract-declarator => "[" type-qualifier-list "]"
219 direct-abstract-declarator => "[" assignment-expression "]"
220 direct-abstract-declarator => "[" "]"
221 direct-abstract-declarator => "[" "static" type-qualifier-list assignment-expression "]"
222 direct-abstract-declarator => "[" "static" type-qualifier-list "]"
223 direct-abstract-declarator => "[" type-qualifier-list "static" assignment-expression "]"
224 direct-abstract-declarator => direct-abstract-declarator "[" "*" "]"
225 direct-abstract-declarator => "[" "*" "]"
226 direct-abstract-declarator => direct-abstract-declarator "(" parameter-type-list ")"
227 direct-abstract-declarator => direct-abstract-declarator "(" ")"
228 direct-abstract-declarator => "(" parameter-type-list ")"
229 direct-abstract-declarator => "(" ")"
230 typedef-name => 'typename
231 initializer => assignment-expression
232 initializer => "{" initializer-list "}"
233 initializer => "{" initializer-list "," "}"
234 initializer-list => designation initializer
235 initializer-list => initializer
236 initializer-list => initializer-list "," designation initializer
237 initializer-list => initializer-list "," initializer
238 designation => designator-list "="
239 designator-list => designator
240 designator-list => designator-list designator
241 designator => "[" constant-expression "]"
242 designator => "." identifier
243 statement => labeled-statement
244 statement => compound-statement
245 statement => expression-statement
246 statement => selection-statement
247 statement => iteration-statement
248 statement => jump-statement
249 statement => cpp-statement
250 labeled-statement => identifier ":" statement
251 labeled-statement => "case" constant-expression ":" statement
252 labeled-statement => "default" ":" statement
253 compound-statement => "{" block-item-list "}" opt-code-comment
254 compound-statement => "{" "}"
255 block-item-list => block-item
256 block-item-list => block-item-list block-item
257 block-item => declaration
258 block-item => statement
259 expression-statement => expression ";"
260 expression-statement => ";"
261 selection-statement => "if" "(" expression ")" statement
262 selection-statement => "if" "(" expression ")" statement "else" statement
263 selection-statement => "switch" "(" expression ")" statement
264 iteration-statement => "while" "(" expression ")" statement
265 iteration-statement => "do" statement "while" "(" expression ")" ";"
266 iteration-statement => "for" "(" initial-clause expression ";" expression ")" statement
267 iteration-statement => "for" "(" initial-clause expression ";" ")" statement
268 iteration-statement => "for" "(" initial-clause ";" expression ")" statement
269 iteration-statement => "for" "(" initial-clause ";" ")" statement
270 initial-clause => expression ";"
271 initial-clause => ";"
272 initial-clause => declaration
273 jump-statement => "goto" identifier ";"
274 jump-statement => "continue" ";"
275 jump-statement => "break" ";"
276 jump-statement => "return" expression ";"
277 jump-statement => "return" ";"
278 translation-unit => external-declaration
279 translation-unit => translation-unit external-declaration
280 external-declaration => function-definition
281 external-declaration => declaration
282 external-declaration => lone-comment
283 external-declaration => cpp-statement
284 external-declaration => "extern" '$string "{" translation-unit "}"
285 function-definition => declaration-specifiers declarator declaration-list compound-statement
286 function-definition => declaration-specifiers declarator compound-statement
287 declaration-list => declaration
288 declaration-list => declaration-list declaration
289 opt-code-comment =>
290 opt-code-comment => code-comment
291 identifier => '$ident
292 identifier => 'cpp-ident
293 constant => '$fixed
294 constant => '$float
295 constant => '$chlit
296 string-literal => '$string
297 string-literal => string-literal '$string
298 code-comment => '$code-comm
299 lone-comment => '$lone-comm
300 cpp-statement => 'cpp-stmt

0:	$start => . translation-unit-proxy ('$end)
	translation-unit-proxy => . translation-unit
	translation-unit => . external-declaration
	translation-unit => . translation-unit external-declaration
	external-declaration => . function-definition
	external-declaration => . declaration
	external-declaration => . lone-comment
	external-declaration => . cpp-statement
	external-declaration => . "extern" '$string "{" translation-unit "}"
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	function-definition => . declaration-specifiers declarator declaration-list compound-statement
	function-definition => . declaration-specifiers declarator compound-statement
	lone-comment => . '$lone-comm
	cpp-statement => . 'cpp-stmt
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		'cpp-stmt => shift 34
		'$lone-comm => shift 35
		declaration-specifiers => shift 36
		"extern" => shift 37
		cpp-statement => shift 38
		lone-comment => shift 39
		declaration => shift 40
		function-definition => shift 41
		external-declaration => shift 42
		translation-unit => shift 43
		translation-unit-proxy => shift 44

1:	typedef-name => 'typename . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 230

2:	enum-specifier => "enum" . identifier ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
	enum-specifier => "enum" . "{" enumerator-list "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enum-specifier => "enum" . "{" enumerator-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enum-specifier => "enum" . identifier "{" enumerator-list "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
	enum-specifier => "enum" . identifier "{" enumerator-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
		"{" => shift 81
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 82

3:	struct-or-union-specifier => "union" . identifier ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
	struct-or-union-specifier => "union" . "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-or-union-specifier => "union" . identifier "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
		"{" => shift 79
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 80

4:	struct-or-union-specifier => "struct" . identifier ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
	struct-or-union-specifier => "struct" . "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-or-union-specifier => "struct" . identifier "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	identifier => . '$ident
	identifier => . 'cpp-ident
		"{" => shift 77
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 78

5:	complex-type-specifier => "_Complex" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 137

6:	complex-type-specifier => "double" . "_Complex" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	float-type-specifier => "double" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"_Complex" => shift 76
		$default => reduce 135
		["_Complex" => reduce 135] REMOVED by precedence

7:	complex-type-specifier => "float" . "_Complex" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	float-type-specifier => "float" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"_Complex" => shift 75
		$default => reduce 134
		["_Complex" => reduce 134] REMOVED by precedence

8:	fixed-type-specifier => "char" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 131

9:	fixed-type-specifier => "unsigned" . "char" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "long" "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "long" "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "short" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" . "short" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"short" => shift 71
		"int" => shift 72
		"long" => shift 73
		"char" => shift 74
		$default => reduce 126
		["short" => reduce 126] REMOVED by precedence
		["int" => reduce 126] REMOVED by precedence
		["long" => reduce 126] REMOVED by precedence
		["char" => reduce 126] REMOVED by precedence

10:	complex-type-specifier => "long" . "double" "_Complex" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	float-type-specifier => "long" . "double" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "long" . "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "long" . "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 68
		"long" => shift 69
		"double" => shift 70
		$default => reduce 115
		["int" => reduce 115] REMOVED by precedence
		["long" => reduce 115] REMOVED by precedence
		["double" => reduce 115] REMOVED by precedence

11:	fixed-type-specifier => "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 112

12:	fixed-type-specifier => "signed" . "char" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "long" "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "long" "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "short" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" . "short" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"short" => shift 64
		"int" => shift 65
		"long" => shift 66
		"char" => shift 67
		$default => reduce 113
		["short" => reduce 113] REMOVED by precedence
		["int" => reduce 113] REMOVED by precedence
		["long" => reduce 113] REMOVED by precedence
		["char" => reduce 113] REMOVED by precedence

13:	fixed-type-specifier => "short" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "short" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 63
		$default => reduce 108
		["int" => reduce 108] REMOVED by precedence

14:	function-specifier => "inline" . ("," ")" "[" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 173

15:	type-qualifier => "restrict" . ("," ")" "[" "]" '$chlit '$float '$fixed '$string "!" "~" "-" "+" "&" "sizeof" "--" "++" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 172

16:	type-qualifier => "volatile" . ("," ")" "[" "]" '$chlit '$float '$fixed '$string "!" "~" "-" "+" "&" "sizeof" "--" "++" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 171

17:	type-qualifier => "const" . ("," ")" "[" "]" '$chlit '$float '$fixed '$string "!" "~" "-" "+" "&" "sizeof" "--" "++" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 170

18:	type-specifier => typedef-name . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 107

19:	type-specifier => enum-specifier . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 106

20:	type-specifier => struct-or-union-specifier . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 105

21:	type-specifier => complex-type-specifier . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 104

22:	type-specifier => "_Bool" . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 103

23:	type-specifier => float-type-specifier . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 102

24:	type-specifier => fixed-type-specifier . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 101

25:	type-specifier => "void" . ("," ")" "[" ":" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 100

26:	storage-class-specifier => "typedef" . ("," ")" "[" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 99

27:	storage-class-specifier => "static" . ("," ")" "[" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 98

28:	storage-class-specifier => "register" . ("," ")" "[" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 97

29:	storage-class-specifier => "auto" . ("," ")" "[" "*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 95

30:	declaration-specifiers => function-specifier . declaration-specifiers ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => function-specifier . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 62
		$default => reduce 89

31:	declaration-specifiers => type-qualifier . declaration-specifiers ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-qualifier . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 61
		$default => reduce 87

32:	declaration-specifiers => type-specifier . declaration-specifiers ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-specifier . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 60
		$default => reduce 85

33:	declaration-specifiers => storage-class-specifier . declaration-specifiers ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => storage-class-specifier . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 59
		$default => reduce 83

34:	cpp-statement => 'cpp-stmt . ('$end "else" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 300

35:	lone-comment => '$lone-comm . ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 299

36:	function-definition => declaration-specifiers . declarator compound-statement ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
	function-definition => declaration-specifiers . declarator declaration-list compound-statement ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
	declaration => declaration-specifiers . ";" opt-code-comment ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	declaration => declaration-specifiers . init-declarator-list $P1 ";" opt-code-comment ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	init-declarator-list => . init-declarator
	init-declarator-list => . init-declarator-list "," init-declarator
	init-declarator => . declarator
	init-declarator => . declarator "=" initializer
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		init-declarator => shift 47
		init-declarator-list => shift 48
		";" => shift 49
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		declarator => shift 57

37:	storage-class-specifier => "extern" . ("*" 'cpp-ident '$ident "(" ";" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
	external-declaration => "extern" . '$string "{" translation-unit "}" ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		'$string => shift 46
		$default => reduce 96

38:	external-declaration => cpp-statement . ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		$default => reduce 283

39:	external-declaration => lone-comment . ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		$default => reduce 282

40:	external-declaration => declaration . ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		$default => reduce 281

41:	external-declaration => function-definition . ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		$default => reduce 280

42:	translation-unit => external-declaration . ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 278

43:	translation-unit => translation-unit . external-declaration ('$end "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	external-declaration => . function-definition
	external-declaration => . declaration
	external-declaration => . lone-comment
	external-declaration => . cpp-statement
	external-declaration => . "extern" '$string "{" translation-unit "}"
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	function-definition => . declaration-specifiers declarator declaration-list compound-statement
	function-definition => . declaration-specifiers declarator compound-statement
	lone-comment => . '$lone-comm
	cpp-statement => . 'cpp-stmt
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	translation-unit-proxy => translation-unit . ('$end)
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		'cpp-stmt => shift 34
		'$lone-comm => shift 35
		declaration-specifiers => shift 36
		"extern" => shift 37
		cpp-statement => shift 38
		lone-comment => shift 39
		declaration => shift 40
		function-definition => shift 41
		external-declaration => shift 45
		'$end => reduce 1

44:	$start => translation-unit-proxy . ('$end)
		'$end => accept 0

45:	translation-unit => translation-unit external-declaration . ("}" '$end "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 279

46:	external-declaration => "extern" '$string . "{" translation-unit "}" ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		"{" => shift 122

47:	init-declarator-list => init-declarator . ("," ";")
		";" => reduce 91
		"," => reduce 91

48:	init-declarator-list => init-declarator-list . "," init-declarator ("," ";")
	declaration => declaration-specifiers init-declarator-list . $P1 ";" opt-code-comment ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	$P1 => .
		$P1 => shift 120
		"," => shift 121
		";" => reduce 82

49:	declaration => declaration-specifiers ";" . opt-code-comment ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	opt-code-comment => .
	opt-code-comment => . code-comment
	code-comment => . '$code-comm
		'$code-comm => shift 117
		code-comment => shift 118
		opt-code-comment => shift 119
		$default => reduce 289

50:	identifier => 'cpp-ident . ('$ident 'cpp-ident "]" "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" "?" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" ":" "}" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "(" "[" "{")
		$default => reduce 292

51:	identifier => '$ident . ('$ident 'cpp-ident "]" "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" "?" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" ":" "}" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "(" "[" "{")
		$default => reduce 291

52:	pointer => "*" . pointer ("," ")" "[" "(" '$ident 'cpp-ident)
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	pointer => "*" . type-qualifier-list pointer ("," ")" "[" "(" '$ident 'cpp-ident)
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	pointer => "*" . ("," ")" "[" "(" '$ident 'cpp-ident)
	pointer => "*" . type-qualifier-list ("," ")" "[" "(" '$ident 'cpp-ident)
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 115
		"*" => shift 52
		pointer => shift 116
		$default => reduce 190

53:	direct-declarator => "(" . declarator ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		declarator => shift 113

54:	direct-declarator => identifier . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 176

55:	direct-declarator => direct-declarator . "(" ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "(" identifier-list ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "(" parameter-type-list ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" "*" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" type-qualifier-list "*" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" type-qualifier-list "static" assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" "static" type-qualifier-list assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" type-qualifier-list "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator . "[" type-qualifier-list assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	declarator => direct-declarator . (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
		"[" => shift 111
		"(" => shift 112
		$default => reduce 175

56:	declarator => pointer . direct-declarator (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 110

57:	init-declarator => declarator . "=" initializer ("," ";")
	init-declarator => declarator . ("," ";")
	function-definition => declaration-specifiers declarator . declaration-list compound-statement ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	declaration-list => . declaration
	declaration-list => . declaration-list declaration
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	function-definition => declaration-specifiers declarator . compound-statement ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
		"{" => shift 104
		compound-statement => shift 105
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 106
		declaration => shift 107
		declaration-list => shift 108
		"=" => shift 109
		";" => reduce 93
		"," => reduce 93

58:	storage-class-specifier => "extern" . ("," ")" "[" ";" "*" 'cpp-ident '$ident "(" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef")
		$default => reduce 96

59:	declaration-specifiers => storage-class-specifier declaration-specifiers . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 84

60:	declaration-specifiers => type-specifier declaration-specifiers . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 86

61:	declaration-specifiers => type-qualifier declaration-specifiers . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 88

62:	declaration-specifiers => function-specifier declaration-specifiers . ("[" ")" "," ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 90

63:	fixed-type-specifier => "short" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 109

64:	fixed-type-specifier => "signed" "short" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" "short" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 103
		$default => reduce 110
		["int" => reduce 110] REMOVED by precedence

65:	fixed-type-specifier => "signed" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 114

66:	fixed-type-specifier => "signed" "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" "long" . "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" "long" . "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"long" => shift 101
		"int" => shift 102
		$default => reduce 117
		["long" => reduce 117] REMOVED by precedence
		["int" => reduce 117] REMOVED by precedence

67:	fixed-type-specifier => "signed" "char" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 132

68:	fixed-type-specifier => "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 116

69:	fixed-type-specifier => "long" "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "long" "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 100
		$default => reduce 119
		["int" => reduce 119] REMOVED by precedence

70:	float-type-specifier => "long" "double" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	complex-type-specifier => "long" "double" . "_Complex" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"_Complex" => shift 99
		$default => reduce 136
		["_Complex" => reduce 136] REMOVED by precedence

71:	fixed-type-specifier => "unsigned" "short" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" "short" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 98
		$default => reduce 124
		["int" => reduce 124] REMOVED by precedence

72:	fixed-type-specifier => "unsigned" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 125

73:	fixed-type-specifier => "unsigned" "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" "long" . "long" "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" "long" . "long" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"long" => shift 96
		"int" => shift 97
		$default => reduce 128
		["long" => reduce 128] REMOVED by precedence
		["int" => reduce 128] REMOVED by precedence

74:	fixed-type-specifier => "unsigned" "char" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 133

75:	complex-type-specifier => "float" "_Complex" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 138

76:	complex-type-specifier => "double" "_Complex" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 139

77:	struct-or-union-specifier => "struct" "{" . struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-declaration-list => . struct-declaration
	struct-declaration-list => . lone-comment
	struct-declaration-list => . struct-declaration-list struct-declaration
	struct-declaration-list => . struct-declaration-list lone-comment
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	lone-comment => . '$lone-comm
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		'$lone-comm => shift 35
		specifier-qualifier-list => shift 90
		lone-comment => shift 91
		struct-declaration => shift 92
		struct-declaration-list => shift 95

78:	struct-or-union-specifier => "struct" identifier . "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-or-union-specifier => "struct" identifier . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"{" => shift 94
		$default => reduce 143

79:	struct-or-union-specifier => "union" "{" . struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-declaration-list => . struct-declaration
	struct-declaration-list => . lone-comment
	struct-declaration-list => . struct-declaration-list struct-declaration
	struct-declaration-list => . struct-declaration-list lone-comment
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	lone-comment => . '$lone-comm
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		'$lone-comm => shift 35
		specifier-qualifier-list => shift 90
		lone-comment => shift 91
		struct-declaration => shift 92
		struct-declaration-list => shift 93

80:	struct-or-union-specifier => "union" identifier . "{" struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-or-union-specifier => "union" identifier . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"{" => shift 87
		$default => reduce 146

81:	enum-specifier => "enum" "{" . enumerator-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => . enumerator
	enumerator-list => . enumerator-list "," enumerator
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	enum-specifier => "enum" "{" . enumerator-list "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => . enumerator
	enumerator-list => . enumerator-list "," enumerator
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 84
		enumerator => shift 85
		enumerator-list => shift 86

82:	enum-specifier => "enum" identifier . "{" enumerator-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enum-specifier => "enum" identifier . "{" enumerator-list "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enum-specifier => "enum" identifier . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"{" => shift 83
		$default => reduce 165

83:	enum-specifier => "enum" identifier "{" . enumerator-list "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => . enumerator
	enumerator-list => . enumerator-list "," enumerator
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	enum-specifier => "enum" identifier "{" . enumerator-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => . enumerator
	enumerator-list => . enumerator-list "," enumerator
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 84
		enumerator => shift 85
		enumerator-list => shift 224

84:	enumerator => identifier . "=" constant-expression ("," "}")
	enumerator => identifier . ("," "}")
		"=" => shift 223
		"}" => reduce 168
		"," => reduce 168

85:	enumerator-list => enumerator . ("," "}")
		"}" => reduce 166
		"," => reduce 166

86:	enum-specifier => "enum" "{" enumerator-list . "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => enumerator-list . "," enumerator ("," "}")
	enum-specifier => "enum" "{" enumerator-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 221
		"," => shift 222

87:	struct-or-union-specifier => "union" identifier "{" . struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-declaration-list => . struct-declaration
	struct-declaration-list => . lone-comment
	struct-declaration-list => . struct-declaration-list struct-declaration
	struct-declaration-list => . struct-declaration-list lone-comment
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	lone-comment => . '$lone-comm
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		'$lone-comm => shift 35
		specifier-qualifier-list => shift 90
		lone-comment => shift 91
		struct-declaration => shift 92
		struct-declaration-list => shift 220

88:	specifier-qualifier-list => type-qualifier . (":" "(" '$ident 'cpp-ident "*")
	specifier-qualifier-list => type-qualifier . specifier-qualifier-list (":" "(" '$ident 'cpp-ident "*")
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 219
		$default => reduce 155

89:	specifier-qualifier-list => type-specifier . (":" "(" '$ident 'cpp-ident "*")
	specifier-qualifier-list => type-specifier . specifier-qualifier-list (":" "(" '$ident 'cpp-ident "*")
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 218
		$default => reduce 153

90:	struct-declaration => specifier-qualifier-list . struct-declarator-list ";" opt-code-comment ('$lone-comm "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "}")
	struct-declarator-list => . struct-declarator
	struct-declarator-list => . struct-declarator-list "," struct-declarator
	struct-declarator => . declarator
	struct-declarator => . declarator ":" constant-expression
	struct-declarator => . ":" constant-expression
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		":" => shift 214
		declarator => shift 215
		struct-declarator => shift 216
		struct-declarator-list => shift 217

91:	struct-declaration-list => lone-comment . ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
		$default => reduce 148

92:	struct-declaration-list => struct-declaration . ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
		$default => reduce 147

93:	struct-declaration-list => struct-declaration-list . lone-comment ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	lone-comment => . '$lone-comm
	struct-declaration-list => struct-declaration-list . struct-declaration ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	struct-or-union-specifier => "union" "{" struct-declaration-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 213
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 90
		struct-declaration => shift 210
		'$lone-comm => shift 35
		lone-comment => shift 211

94:	struct-or-union-specifier => "struct" identifier "{" . struct-declaration-list "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	struct-declaration-list => . struct-declaration
	struct-declaration-list => . lone-comment
	struct-declaration-list => . struct-declaration-list struct-declaration
	struct-declaration-list => . struct-declaration-list lone-comment
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	lone-comment => . '$lone-comm
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		'$lone-comm => shift 35
		specifier-qualifier-list => shift 90
		lone-comment => shift 91
		struct-declaration => shift 92
		struct-declaration-list => shift 212

95:	struct-declaration-list => struct-declaration-list . lone-comment ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	lone-comment => . '$lone-comm
	struct-declaration-list => struct-declaration-list . struct-declaration ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	struct-or-union-specifier => "struct" "{" struct-declaration-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 209
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 90
		struct-declaration => shift 210
		'$lone-comm => shift 35
		lone-comment => shift 211

96:	fixed-type-specifier => "unsigned" "long" "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "unsigned" "long" "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 208
		$default => reduce 130
		["int" => reduce 130] REMOVED by precedence

97:	fixed-type-specifier => "unsigned" "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 127

98:	fixed-type-specifier => "unsigned" "short" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 123

99:	complex-type-specifier => "long" "double" "_Complex" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 140

100:	fixed-type-specifier => "long" "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 120

101:	fixed-type-specifier => "signed" "long" "long" . "int" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	fixed-type-specifier => "signed" "long" "long" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"int" => shift 207
		$default => reduce 121
		["int" => reduce 121] REMOVED by precedence

102:	fixed-type-specifier => "signed" "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 118

103:	fixed-type-specifier => "signed" "short" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 111

104:	compound-statement => "{" . "}" ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	compound-statement => "{" . block-item-list "}" opt-code-comment ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	block-item-list => . block-item
	block-item-list => . block-item-list block-item
	block-item => . declaration
	block-item => . statement
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		declaration-specifiers => shift 106
		statement => shift 202
		declaration => shift 203
		block-item => shift 204
		block-item-list => shift 205
		"}" => shift 206

105:	function-definition => declaration-specifiers declarator compound-statement . ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 286

106:	declaration => declaration-specifiers . ";" opt-code-comment ('cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "}" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "{")
	declaration => declaration-specifiers . init-declarator-list $P1 ";" opt-code-comment ('cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "}" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "{")
	init-declarator-list => . init-declarator
	init-declarator-list => . init-declarator-list "," init-declarator
	init-declarator => . declarator
	init-declarator => . declarator "=" initializer
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		declarator => shift 124
		init-declarator => shift 47
		init-declarator-list => shift 48
		";" => shift 49

107:	declaration-list => declaration . ("inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
		$default => reduce 287

108:	declaration-list => declaration-list . declaration ("inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	function-definition => declaration-specifiers declarator declaration-list . compound-statement ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
		"{" => shift 104
		compound-statement => shift 178
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 106
		declaration => shift 179

109:	init-declarator => declarator "=" . initializer ("," ";")
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 177

110:	direct-declarator => direct-declarator . "(" ")" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "(" identifier-list ")" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "(" parameter-type-list ")" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" "*" "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" type-qualifier-list "*" "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" type-qualifier-list "static" assignment-expression "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" "static" type-qualifier-list assignment-expression "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" assignment-expression "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" type-qualifier-list "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	direct-declarator => direct-declarator . "[" type-qualifier-list assignment-expression "]" (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{" "[" "(")
	declarator => pointer direct-declarator . (":" ")" "," ";" "=" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
		"[" => shift 111
		"(" => shift 112
		$default => reduce 174

111:	direct-declarator => direct-declarator "[" . type-qualifier-list assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" . type-qualifier-list "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" . assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	direct-declarator => direct-declarator "[" . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator "[" . "static" type-qualifier-list assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator "[" . type-qualifier-list "static" assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" . type-qualifier-list "*" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" . "*" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"static" => shift 137
		"]" => shift 138
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 160
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 172
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 173

112:	direct-declarator => direct-declarator "(" . parameter-type-list ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	parameter-type-list => . parameter-list
	parameter-type-list => . parameter-list "," "..."
	parameter-list => . parameter-declaration
	parameter-list => . parameter-list "," parameter-declaration
	parameter-declaration => . declaration-specifiers declarator
	parameter-declaration => . declaration-specifiers abstract-declarator
	parameter-declaration => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	direct-declarator => direct-declarator "(" . identifier-list ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	identifier-list => . identifier
	identifier-list => . identifier-list "," identifier
	identifier => . '$ident
	identifier => . 'cpp-ident
	direct-declarator => direct-declarator "(" . ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		")" => shift 130
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 131
		identifier-list => shift 132
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 133
		parameter-declaration => shift 134
		parameter-list => shift 135
		parameter-type-list => shift 136

113:	direct-declarator => "(" declarator . ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		")" => shift 129

114:	type-qualifier-list => type-qualifier . ("," ")" "[" "static" "]" "++" "--" "sizeof" "&" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "const" "volatile" "restrict" "*")
		$default => reduce 193

115:	pointer => "*" type-qualifier-list . ("," ")" "[" "(" '$ident 'cpp-ident)
	type-qualifier-list => type-qualifier-list . type-qualifier ("," ")" "[" "(" '$ident 'cpp-ident "const" "volatile" "restrict" "*")
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	pointer => "*" type-qualifier-list . pointer ("," ")" "[" "(" '$ident 'cpp-ident)
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
		"*" => shift 52
		pointer => shift 127
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		$default => reduce 189

116:	pointer => "*" pointer . ("," ")" "[" "(" '$ident 'cpp-ident)
		$default => reduce 192

117:	code-comment => '$code-comm . ("else" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 298

118:	opt-code-comment => code-comment . ("else" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 290

119:	declaration => declaration-specifiers ";" opt-code-comment . ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 81

120:	declaration => declaration-specifiers init-declarator-list $P1 . ";" opt-code-comment ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		";" => shift 126

121:	init-declarator-list => init-declarator-list "," . init-declarator ("," ";")
	init-declarator => . declarator
	init-declarator => . declarator "=" initializer
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		declarator => shift 124
		init-declarator => shift 125

122:	external-declaration => "extern" '$string "{" . translation-unit "}" ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
	translation-unit => . external-declaration
	translation-unit => . translation-unit external-declaration
	external-declaration => . function-definition
	external-declaration => . declaration
	external-declaration => . lone-comment
	external-declaration => . cpp-statement
	external-declaration => . "extern" '$string "{" translation-unit "}"
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	function-definition => . declaration-specifiers declarator declaration-list compound-statement
	function-definition => . declaration-specifiers declarator compound-statement
	lone-comment => . '$lone-comm
	cpp-statement => . 'cpp-stmt
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		'cpp-stmt => shift 34
		'$lone-comm => shift 35
		declaration-specifiers => shift 36
		"extern" => shift 37
		cpp-statement => shift 38
		lone-comment => shift 39
		declaration => shift 40
		function-definition => shift 41
		external-declaration => shift 42
		translation-unit => shift 123

123:	translation-unit => translation-unit . external-declaration ("extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef" "}")
	external-declaration => . function-definition
	external-declaration => . declaration
	external-declaration => . lone-comment
	external-declaration => . cpp-statement
	external-declaration => . "extern" '$string "{" translation-unit "}"
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	function-definition => . declaration-specifiers declarator declaration-list compound-statement
	function-definition => . declaration-specifiers declarator compound-statement
	lone-comment => . '$lone-comm
	cpp-statement => . 'cpp-stmt
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	external-declaration => "extern" '$string "{" translation-unit . "}" ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		"}" => shift 330
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		'cpp-stmt => shift 34
		'$lone-comm => shift 35
		declaration-specifiers => shift 36
		"extern" => shift 37
		cpp-statement => shift 38
		lone-comment => shift 39
		declaration => shift 40
		function-definition => shift 41
		external-declaration => shift 45

124:	init-declarator => declarator . "=" initializer ("," ";")
	init-declarator => declarator . ("," ";")
		"=" => shift 109
		";" => reduce 93
		"," => reduce 93

125:	init-declarator-list => init-declarator-list "," init-declarator . ("," ";")
		";" => reduce 92
		"," => reduce 92

126:	declaration => declaration-specifiers init-declarator-list $P1 ";" . opt-code-comment ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
	opt-code-comment => .
	opt-code-comment => . code-comment
	code-comment => . '$code-comm
		'$code-comm => shift 117
		code-comment => shift 118
		opt-code-comment => shift 329
		$default => reduce 289

127:	pointer => "*" type-qualifier-list pointer . ("," ")" "[" "(" '$ident 'cpp-ident)
		$default => reduce 191

128:	type-qualifier-list => type-qualifier-list type-qualifier . ("," "static" "]" "++" "--" "sizeof" "&" "+" "-" "~" "!" '$string '$fixed '$float '$chlit ")" "[" "(" '$ident 'cpp-ident "const" "volatile" "restrict" "*")
		$default => reduce 194

129:	direct-declarator => "(" declarator ")" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 177

130:	direct-declarator => direct-declarator "(" ")" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 188

131:	identifier-list => identifier . ("," ")")
		")" => reduce 202
		"," => reduce 202

132:	identifier-list => identifier-list . "," identifier ("," ")")
	direct-declarator => direct-declarator "(" identifier-list . ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		")" => shift 327
		"," => shift 328

133:	parameter-declaration => declaration-specifiers . ("," ")")
	parameter-declaration => declaration-specifiers . abstract-declarator ("," ")")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
	parameter-declaration => declaration-specifiers . declarator ("," ")")
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 54
		direct-declarator => shift 55
		declarator => shift 321
		"[" => shift 322
		"(" => shift 323
		"*" => shift 52
		direct-abstract-declarator => shift 324
		pointer => shift 325
		abstract-declarator => shift 326
		")" => reduce 201
		"," => reduce 201

134:	parameter-list => parameter-declaration . (")" ",")
		"," => reduce 197
		")" => reduce 197

135:	parameter-list => parameter-list . "," parameter-declaration (")" ",")
	parameter-type-list => parameter-list . "," "..." (")")
	parameter-type-list => parameter-list . (")")
		"," => shift 320
		")" => reduce 195

136:	direct-declarator => direct-declarator "(" parameter-type-list . ")" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		")" => shift 319

137:	direct-declarator => direct-declarator "[" "static" . type-qualifier-list assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 318

138:	direct-declarator => direct-declarator "[" "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 181

139:	multiplicative-expression => cast-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		$default => reduce 34

140:	multiplicative-expression => multiplicative-expression . "%" cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	multiplicative-expression => multiplicative-expression . "/" cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	multiplicative-expression => multiplicative-expression . "*" cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	additive-expression => multiplicative-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
		"*" => shift 315
		"/" => shift 316
		"%" => shift 317
		$default => reduce 38

141:	additive-expression => additive-expression . "-" multiplicative-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
	additive-expression => additive-expression . "+" multiplicative-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
	shift-expression => additive-expression . (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"+" => shift 313
		"-" => shift 314
		$default => reduce 41

142:	shift-expression => shift-expression . ">>" additive-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	shift-expression => shift-expression . "<<" additive-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	relational-expression => shift-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
		"<<" => shift 311
		">>" => shift 312
		$default => reduce 44

143:	relational-expression => relational-expression . ">=" shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	relational-expression => relational-expression . "<=" shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	relational-expression => relational-expression . ">" shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	relational-expression => relational-expression . "<" shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	equality-expression => relational-expression . (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"<" => shift 307
		">" => shift 308
		"<=" => shift 309
		">=" => shift 310
		$default => reduce 49

144:	equality-expression => equality-expression . "!=" relational-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	equality-expression => equality-expression . "==" relational-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	bitwise-and-expression => equality-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?")
		"==" => shift 305
		"!=" => shift 306
		$default => reduce 52

145:	bitwise-and-expression => bitwise-and-expression . "&" equality-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?")
	bitwise-xor-expression => bitwise-and-expression . (":" "}" ")" "]" "^" "|" "&&" "||" "," "?" ";")
		"&" => shift 304
		$default => reduce 54

146:	string-literal => '$string . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" '$string "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 296

147:	constant => '$chlit . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 295

148:	constant => '$float . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 294

149:	constant => '$fixed . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 293

150:	bitwise-xor-expression => bitwise-xor-expression . "^" bitwise-and-expression (":" "}" ")" "]" "^" "|" "&&" "||" "," "?" ";")
	bitwise-or-expression => bitwise-xor-expression . (":" "}" ")" "]" "," "||" "&&" "|" ";" "?")
		"^" => shift 303
		$default => reduce 56

151:	bitwise-or-expression => bitwise-or-expression . "|" bitwise-xor-expression (":" "}" ")" "]" "," "||" "&&" "|" ";" "?")
	logical-and-expression => bitwise-or-expression . (":" "}" ")" "]" "&&" "||" "," "?" ";")
		"|" => shift 302
		$default => reduce 58

152:	string-literal => string-literal . '$string (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" '$string "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	primary-expression => string-literal . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		'$string => shift 301
		$default => reduce 4

153:	primary-expression => constant . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 3

154:	primary-expression => identifier . (":" ";" "}" "," ")" "]" "||" "&&" "|" "^" "&" "==" "!=" ">=" "<=" ">" "<" "<<" ">>" "-" "+" "*" "/" "%" "?" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 2

155:	logical-and-expression => logical-and-expression . "&&" bitwise-or-expression (":" "}" ")" "]" "&&" "||" "," "?" ";")
	logical-or-expression => logical-and-expression . (":" "}" ")" "]" "," "||" ";" "?")
		"&&" => shift 300
		$default => reduce 60

156:	unary-operator => "!" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 31

157:	unary-operator => "~" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 30

158:	unary-operator => "-" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 29

159:	unary-operator => "+" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 28

160:	direct-declarator => direct-declarator "[" "*" . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	unary-operator => "*" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		"]" => shift 299
		$default => reduce 27

161:	unary-operator => "&" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 26

162:	cast-expression => "(" . type-name ")" cast-expression ("=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" ":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => "(" . expression ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => "(" . type-name ")" "{" initializer-list "," "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	postfix-expression => "(" . type-name ")" "{" initializer-list "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 293
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 294
		type-specifier => shift 295
		storage-class-specifier => shift 33
		declaration-specifiers => shift 296
		specifier-qualifier-list => shift 297
		type-name => shift 298

163:	postfix-expression => primary-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 6

164:	logical-or-expression => logical-or-expression . "||" logical-and-expression (":" "}" ")" "]" "," "||" ";" "?")
	conditional-expression => logical-or-expression . "?" expression ":" conditional-expression (":" "}" ")" "]" "," ";")
	conditional-expression => logical-or-expression . (":" "}" ")" "]" "," ";")
		"?" => shift 291
		"||" => shift 292
		$default => reduce 62

165:	unary-expression => "sizeof" . "(" type-name ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	unary-expression => "sizeof" . unary-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 289
		"(" => shift 290

166:	unary-expression => unary-operator . cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 288

167:	unary-expression => "--" . unary-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 285
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 287

168:	unary-expression => "++" . unary-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 285
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 286

169:	postfix-expression => postfix-expression . "--" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "++" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "->" identifier (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "." identifier (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "(" ")" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "(" argument-expression-list ")" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => postfix-expression . "[" expression "]" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	unary-expression => postfix-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		"[" => shift 279
		"(" => shift 280
		"." => shift 281
		"->" => shift 282
		"++" => shift 283
		"--" => shift 284
		$default => reduce 20

170:	cast-expression => unary-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?")
	assignment-expression => unary-expression . assignment-operator assignment-expression (":" "}" ")" "]" "," ";")
	assignment-operator => . "="
	assignment-operator => . "+="
	assignment-operator => . "-="
	assignment-operator => . "*="
	assignment-operator => . "/="
	assignment-operator => . "%="
	assignment-operator => . "<<="
	assignment-operator => . ">>="
	assignment-operator => . "&="
	assignment-operator => . "^="
	assignment-operator => . "|="
		"|=" => shift 267
		"^=" => shift 268
		"&=" => shift 269
		">>=" => shift 270
		"<<=" => shift 271
		"%=" => shift 272
		"/=" => shift 273
		"*=" => shift 274
		"-=" => shift 275
		"+=" => shift 276
		"=" => shift 277
		assignment-operator => shift 278
		$default => reduce 32

171:	assignment-expression => conditional-expression . (":" "}" ")" "]" "," ";")
		$default => reduce 64

172:	direct-declarator => direct-declarator "[" assignment-expression . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"]" => shift 266

173:	direct-declarator => direct-declarator "[" type-qualifier-list . "*" "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator "[" type-qualifier-list . "static" assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	direct-declarator => direct-declarator "[" type-qualifier-list . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	type-qualifier-list => type-qualifier-list . type-qualifier ("static" "]" "const" "volatile" "restrict" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" type-qualifier-list . assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 262
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		"]" => shift 263
		"static" => shift 264
		"*" => shift 265

174:	unary-operator => "*" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 27

175:	initializer => "{" . initializer-list "," "}" (";" "}" ",")
	initializer-list => . designation initializer
	initializer-list => . initializer
	initializer-list => . initializer-list "," designation initializer
	initializer-list => . initializer-list "," initializer
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	designation => . designator-list "="
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	designator-list => . designator
	designator-list => . designator-list designator
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	initializer => "{" . initializer-list "}" (";" "}" ",")
	initializer-list => . designation initializer
	initializer-list => . initializer
	initializer-list => . initializer-list "," designation initializer
	initializer-list => . initializer-list "," initializer
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	designation => . designator-list "="
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	designator-list => . designator
	designator-list => . designator-list designator
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		"." => shift 255
		"[" => shift 256
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		designator => shift 257
		unary-expression => shift 170
		conditional-expression => shift 171
		designator-list => shift 258
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 259
		designation => shift 260
		initializer-list => shift 261

176:	initializer => assignment-expression . (";" "}" ",")
		"," => reduce 231
		"}" => reduce 231
		";" => reduce 231

177:	init-declarator => declarator "=" initializer . ("," ";")
		";" => reduce 94
		"," => reduce 94

178:	function-definition => declaration-specifiers declarator declaration-list compound-statement . ('$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 285

179:	declaration-list => declaration-list declaration . ("inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "{")
		$default => reduce 288

180:	expression => assignment-expression . (":" "]" ")" "," ";")
		$default => reduce 77

181:	jump-statement => "return" . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	jump-statement => "return" . expression ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 253
		";" => shift 254

182:	jump-statement => "break" . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 252

183:	jump-statement => "continue" . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 251

184:	jump-statement => "goto" . identifier ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 250

185:	iteration-statement => "for" . "(" initial-clause ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" . "(" initial-clause ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" . "(" initial-clause expression ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" . "(" initial-clause expression ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"(" => shift 249

186:	iteration-statement => "do" . statement "while" "(" expression ")" ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 248

187:	iteration-statement => "while" . "(" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"(" => shift 247

188:	selection-statement => "switch" . "(" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"(" => shift 246

189:	selection-statement => "if" . "(" expression ")" statement "else" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	selection-statement => "if" . "(" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"(" => shift 245

190:	expression-statement => ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 260

191:	expression => expression . "," assignment-expression ("," ";")
	expression-statement => expression . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 243
		"," => shift 244

192:	labeled-statement => "default" . ":" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		":" => shift 242

193:	labeled-statement => "case" . constant-expression ":" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	constant-expression => . conditional-expression
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 228
		constant-expression => shift 241

194:	primary-expression => identifier . ("*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	labeled-statement => identifier . ":" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		":" => shift 240
		$default => reduce 2

195:	statement => cpp-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 249

196:	statement => jump-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 248

197:	statement => iteration-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 247

198:	statement => selection-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 246

199:	statement => expression-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 245

200:	statement => compound-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 244

201:	statement => labeled-statement . ("else" 'cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 243

202:	block-item => statement . ("typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 258

203:	block-item => declaration . ("typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 257

204:	block-item-list => block-item . ('cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 255

205:	block-item-list => block-item-list . block-item ('cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
	block-item => . declaration
	block-item => . statement
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	compound-statement => "{" block-item-list . "}" opt-code-comment ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"}" => shift 238
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		declaration-specifiers => shift 106
		statement => shift 202
		declaration => shift 203
		block-item => shift 239

206:	compound-statement => "{" "}" . ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 254

207:	fixed-type-specifier => "signed" "long" "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 122

208:	fixed-type-specifier => "unsigned" "long" "long" "int" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 129

209:	struct-or-union-specifier => "struct" "{" struct-declaration-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 142

210:	struct-declaration-list => struct-declaration-list struct-declaration . ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
		$default => reduce 149

211:	struct-declaration-list => struct-declaration-list lone-comment . ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
		$default => reduce 150

212:	struct-declaration-list => struct-declaration-list . lone-comment ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	lone-comment => . '$lone-comm
	struct-declaration-list => struct-declaration-list . struct-declaration ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	struct-or-union-specifier => "struct" identifier "{" struct-declaration-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 237
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 90
		struct-declaration => shift 210
		'$lone-comm => shift 35
		lone-comment => shift 211

213:	struct-or-union-specifier => "union" "{" struct-declaration-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 145

214:	struct-declarator => ":" . constant-expression ("," ";")
	constant-expression => . conditional-expression
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 228
		constant-expression => shift 236

215:	struct-declarator => declarator . ":" constant-expression ("," ";")
	struct-declarator => declarator . ("," ";")
		":" => shift 235
		";" => reduce 158
		"," => reduce 158

216:	struct-declarator-list => struct-declarator . ("," ";")
		";" => reduce 156
		"," => reduce 156

217:	struct-declarator-list => struct-declarator-list . "," struct-declarator ("," ";")
	struct-declaration => specifier-qualifier-list struct-declarator-list . ";" opt-code-comment ('$lone-comm "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "}")
		";" => shift 233
		"," => shift 234

218:	specifier-qualifier-list => type-specifier specifier-qualifier-list . ("[" ":" "(" '$ident 'cpp-ident "*")
		$default => reduce 152

219:	specifier-qualifier-list => type-qualifier specifier-qualifier-list . ("[" ":" "(" '$ident 'cpp-ident "*")
		$default => reduce 154

220:	struct-declaration-list => struct-declaration-list . lone-comment ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	lone-comment => . '$lone-comm
	struct-declaration-list => struct-declaration-list . struct-declaration ("const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" '$lone-comm "}")
	struct-declaration => . specifier-qualifier-list struct-declarator-list ";" opt-code-comment
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	struct-or-union-specifier => "union" identifier "{" struct-declaration-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 232
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 88
		type-specifier => shift 89
		specifier-qualifier-list => shift 90
		struct-declaration => shift 210
		'$lone-comm => shift 35
		lone-comment => shift 211

221:	enum-specifier => "enum" "{" enumerator-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 163

222:	enumerator-list => enumerator-list "," . enumerator ("," "}")
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	enum-specifier => "enum" "{" enumerator-list "," . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"}" => shift 230
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 84
		enumerator => shift 231

223:	enumerator => identifier "=" . constant-expression ("," "}")
	constant-expression => . conditional-expression
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 228
		constant-expression => shift 229

224:	enum-specifier => "enum" identifier "{" enumerator-list . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => enumerator-list . "," enumerator ("}" ",")
	enum-specifier => "enum" identifier "{" enumerator-list . "," "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		"," => shift 225
		"}" => shift 226

225:	enum-specifier => "enum" identifier "{" enumerator-list "," . "}" ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
	enumerator-list => enumerator-list "," . enumerator ("}" ",")
	enumerator => . identifier
	enumerator => . identifier "=" constant-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 84
		enumerator => shift 231
		"}" => shift 408

226:	enum-specifier => "enum" identifier "{" enumerator-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 161

227:	cast-expression => unary-expression . ("}" ")" "," ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "]" "%" "/" "*" "+" "-" ">>" "<<" "<" ">" "<=" ">=" "!=" "==" "&" "^" "|" "&&" "||" ":" "?")
		$default => reduce 32

228:	constant-expression => conditional-expression . ("}" "," ";" "]" ":")
		$default => reduce 79

229:	enumerator => identifier "=" constant-expression . ("," "}")
		"}" => reduce 169
		"," => reduce 169

230:	enum-specifier => "enum" "{" enumerator-list "," "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 164

231:	enumerator-list => enumerator-list "," enumerator . ("," "}")
		"}" => reduce 167
		"," => reduce 167

232:	struct-or-union-specifier => "union" identifier "{" struct-declaration-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 144

233:	struct-declaration => specifier-qualifier-list struct-declarator-list ";" . opt-code-comment ('$lone-comm "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "}")
	opt-code-comment => .
	opt-code-comment => . code-comment
	code-comment => . '$code-comm
		'$code-comm => shift 117
		code-comment => shift 118
		opt-code-comment => shift 407
		$default => reduce 289

234:	struct-declarator-list => struct-declarator-list "," . struct-declarator ("," ";")
	struct-declarator => . declarator
	struct-declarator => . declarator ":" constant-expression
	struct-declarator => . ":" constant-expression
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 53
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 56
		":" => shift 214
		declarator => shift 215
		struct-declarator => shift 406

235:	struct-declarator => declarator ":" . constant-expression ("," ";")
	constant-expression => . conditional-expression
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 228
		constant-expression => shift 405

236:	struct-declarator => ":" constant-expression . ("," ";")
		";" => reduce 160
		"," => reduce 160

237:	struct-or-union-specifier => "struct" identifier "{" struct-declaration-list "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 141

238:	compound-statement => "{" block-item-list "}" . opt-code-comment ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	opt-code-comment => .
	opt-code-comment => . code-comment
	code-comment => . '$code-comm
		'$code-comm => shift 117
		code-comment => shift 118
		opt-code-comment => shift 404
		$default => reduce 289

239:	block-item-list => block-item-list block-item . ('cpp-stmt "goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "{" "case" "default" "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "extern" "register" "static" "typedef" "}")
		$default => reduce 256

240:	labeled-statement => identifier ":" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 403

241:	labeled-statement => "case" constant-expression . ":" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		":" => shift 402

242:	labeled-statement => "default" ":" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 401

243:	expression-statement => expression ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 259

244:	expression => expression "," . assignment-expression ("]" ":" ")" "," ";")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 400

245:	selection-statement => "if" "(" . expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	selection-statement => "if" "(" . expression ")" statement "else" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 399

246:	selection-statement => "switch" "(" . expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 398

247:	iteration-statement => "while" "(" . expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 397

248:	iteration-statement => "do" statement . "while" "(" expression ")" ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"while" => shift 396

249:	iteration-statement => "for" "(" . initial-clause expression ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	initial-clause => . expression ";"
	initial-clause => . ";"
	initial-clause => . declaration
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	iteration-statement => "for" "(" . initial-clause expression ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	initial-clause => . expression ";"
	initial-clause => . ";"
	initial-clause => . declaration
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	iteration-statement => "for" "(" . initial-clause ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	initial-clause => . expression ";"
	initial-clause => . ";"
	initial-clause => . declaration
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	iteration-statement => "for" "(" . initial-clause ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	initial-clause => . expression ";"
	initial-clause => . ";"
	initial-clause => . declaration
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	declaration => . declaration-specifiers init-declarator-list $P1 ";" opt-code-comment
	declaration => . declaration-specifiers ";" opt-code-comment
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		unary-expression => shift 170
		conditional-expression => shift 171
		declaration-specifiers => shift 106
		assignment-expression => shift 180
		declaration => shift 392
		";" => shift 393
		expression => shift 394
		initial-clause => shift 395

250:	jump-statement => "goto" identifier . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 391

251:	jump-statement => "continue" ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 274

252:	jump-statement => "break" ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 275

253:	expression => expression . "," assignment-expression ("," ";")
	jump-statement => "return" expression . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 390
		"," => shift 244

254:	jump-statement => "return" ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 277

255:	designator => "." . identifier ("." "[" "=")
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 389

256:	designator => "[" . constant-expression "]" ("." "[" "=")
	constant-expression => . conditional-expression
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 228
		constant-expression => shift 388

257:	designator-list => designator . ("[" "." "=")
		"=" => reduce 239
		"." => reduce 239
		"[" => reduce 239

258:	designator-list => designator-list . designator ("[" "." "=")
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	designation => designator-list . "=" ("{" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		"=" => shift 386
		"." => shift 255
		"[" => shift 256
		designator => shift 387

259:	initializer-list => initializer . ("}" ",")
		"," => reduce 235
		"}" => reduce 235

260:	initializer-list => designation . initializer ("}" ",")
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 385

261:	initializer => "{" initializer-list . "}" (";" "}" ",")
	initializer-list => initializer-list . "," initializer ("}" ",")
	initializer-list => initializer-list . "," designation initializer ("}" ",")
	initializer => "{" initializer-list . "," "}" (";" "}" ",")
		"," => shift 383
		"}" => shift 384

262:	direct-declarator => direct-declarator "[" type-qualifier-list assignment-expression . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"]" => shift 382

263:	direct-declarator => direct-declarator "[" type-qualifier-list "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 179

264:	direct-declarator => direct-declarator "[" type-qualifier-list "static" . assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 381

265:	unary-operator => "*" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	direct-declarator => direct-declarator "[" type-qualifier-list "*" . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"]" => shift 380
		$default => reduce 27

266:	direct-declarator => direct-declarator "[" assignment-expression "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 180

267:	assignment-operator => "|=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 76

268:	assignment-operator => "^=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 75

269:	assignment-operator => "&=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 74

270:	assignment-operator => ">>=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 73

271:	assignment-operator => "<<=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 72

272:	assignment-operator => "%=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 71

273:	assignment-operator => "/=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 70

274:	assignment-operator => "*=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 69

275:	assignment-operator => "-=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 68

276:	assignment-operator => "+=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 67

277:	assignment-operator => "=" . ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 66

278:	assignment-expression => unary-expression assignment-operator . assignment-expression (":" "}" ")" "]" "," ";")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 379

279:	postfix-expression => postfix-expression "[" . expression "]" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 378

280:	postfix-expression => postfix-expression "(" . argument-expression-list ")" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	argument-expression-list => . assignment-expression
	argument-expression-list => . argument-expression-list "," assignment-expression
	argument-expression-list => . declaration-specifiers abstract-declarator
	argument-expression-list => . argument-expression-list "," declaration-specifiers abstract-declarator
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => postfix-expression "(" . ")" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		")" => shift 374
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		unary-expression => shift 170
		conditional-expression => shift 171
		declaration-specifiers => shift 375
		assignment-expression => shift 376
		argument-expression-list => shift 377

281:	postfix-expression => postfix-expression "." . identifier (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 373

282:	postfix-expression => postfix-expression "->" . identifier (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 372

283:	postfix-expression => postfix-expression "++" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 12

284:	postfix-expression => postfix-expression "--" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 13

285:	primary-expression => "(" . expression ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "--" "++" "->" "." "(" "[")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => "(" . type-name ")" "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	postfix-expression => "(" . type-name ")" "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 294
		type-specifier => shift 295
		storage-class-specifier => shift 33
		declaration-specifiers => shift 296
		specifier-qualifier-list => shift 297
		type-name => shift 371
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 293

286:	unary-expression => "++" unary-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 21

287:	unary-expression => "--" unary-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 22

288:	unary-expression => unary-operator cast-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 23

289:	unary-expression => "sizeof" unary-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 24

290:	primary-expression => "(" . expression ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "--" "++" "->" "." "(" "[")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => "(" . type-name ")" "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	postfix-expression => "(" . type-name ")" "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	unary-expression => "sizeof" "(" . type-name ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	type-name => . specifier-qualifier-list abstract-declarator
	type-name => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 294
		type-specifier => shift 295
		storage-class-specifier => shift 33
		declaration-specifiers => shift 296
		specifier-qualifier-list => shift 297
		type-name => shift 370
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 293

291:	conditional-expression => logical-or-expression "?" . expression ":" conditional-expression (":" "}" ")" "]" "," ";")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 369

292:	logical-or-expression => logical-or-expression "||" . logical-and-expression (":" "}" ")" "]" "," "||" ";" "?")
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 368

293:	expression => expression . "," assignment-expression ("," ")")
	primary-expression => "(" expression . ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		")" => shift 367
		"," => shift 244

294:	specifier-qualifier-list => type-qualifier . ("(" "[" "*")
	specifier-qualifier-list => type-qualifier . specifier-qualifier-list ("(" "[" "*")
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-qualifier . declaration-specifiers (")")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-qualifier . (")")
		"inline" => shift 14
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		storage-class-specifier => shift 33
		declaration-specifiers => shift 61
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 294
		type-specifier => shift 295
		specifier-qualifier-list => shift 219
		")" => reduce 87
		"*" => reduce 155
		"[" => reduce 155
		"(" => reduce 155

295:	specifier-qualifier-list => type-specifier . ("(" "[" "*")
	specifier-qualifier-list => type-specifier . specifier-qualifier-list ("(" "[" "*")
	specifier-qualifier-list => . type-specifier specifier-qualifier-list
	specifier-qualifier-list => . type-specifier
	specifier-qualifier-list => . type-qualifier specifier-qualifier-list
	specifier-qualifier-list => . type-qualifier
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-specifier . declaration-specifiers (")")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	declaration-specifiers => type-specifier . (")")
		"inline" => shift 14
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		storage-class-specifier => shift 33
		declaration-specifiers => shift 60
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		type-qualifier => shift 294
		type-specifier => shift 295
		specifier-qualifier-list => shift 218
		")" => reduce 85
		"*" => reduce 153
		"[" => reduce 153
		"(" => reduce 153

296:	type-name => declaration-specifiers . (")")
		")" => reduce 205

297:	type-name => specifier-qualifier-list . abstract-declarator (")")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
		"[" => shift 322
		"(" => shift 364
		"*" => shift 52
		direct-abstract-declarator => shift 324
		pointer => shift 365
		abstract-declarator => shift 366

298:	postfix-expression => "(" type-name . ")" "{" initializer-list "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => "(" type-name . ")" "{" initializer-list "," "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	cast-expression => "(" type-name . ")" cast-expression ("=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" ":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?")
		")" => shift 363

299:	direct-declarator => direct-declarator "[" "*" "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 185

300:	logical-and-expression => logical-and-expression "&&" . bitwise-or-expression (":" "}" ")" "]" "&&" "||" "," "?" ";")
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 362

301:	string-literal => string-literal '$string . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" '$string "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 297

302:	bitwise-or-expression => bitwise-or-expression "|" . bitwise-xor-expression (":" "}" ")" "]" "," "||" "&&" "|" ";" "?")
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 361

303:	bitwise-xor-expression => bitwise-xor-expression "^" . bitwise-and-expression (":" "}" ")" "]" "^" "|" "&&" "||" "," "?" ";")
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 360

304:	bitwise-and-expression => bitwise-and-expression "&" . equality-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?")
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 359

305:	equality-expression => equality-expression "==" . relational-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 358

306:	equality-expression => equality-expression "!=" . relational-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 357

307:	relational-expression => relational-expression "<" . shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 356

308:	relational-expression => relational-expression ">" . shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 355

309:	relational-expression => relational-expression "<=" . shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 354

310:	relational-expression => relational-expression ">=" . shift-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 353

311:	shift-expression => shift-expression "<<" . additive-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 352

312:	shift-expression => shift-expression ">>" . additive-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 351

313:	additive-expression => additive-expression "+" . multiplicative-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 350

314:	additive-expression => additive-expression "-" . multiplicative-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 349

315:	multiplicative-expression => multiplicative-expression "*" . cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 348

316:	multiplicative-expression => multiplicative-expression "/" . cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 347

317:	multiplicative-expression => multiplicative-expression "%" . cast-expression (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 346

318:	type-qualifier-list => type-qualifier-list . type-qualifier ("const" "volatile" "restrict" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-declarator => direct-declarator "[" "static" type-qualifier-list . assignment-expression "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 345
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128

319:	direct-declarator => direct-declarator "(" parameter-type-list ")" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 186

320:	parameter-type-list => parameter-list "," . "..." (")")
	parameter-list => parameter-list "," . parameter-declaration (")" ",")
	parameter-declaration => . declaration-specifiers declarator
	parameter-declaration => . declaration-specifiers abstract-declarator
	parameter-declaration => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 133
		parameter-declaration => shift 343
		"..." => shift 344

321:	parameter-declaration => declaration-specifiers declarator . ("," ")")
		")" => reduce 199
		"," => reduce 199

322:	direct-abstract-declarator => "[" . "*" "]" ("," ")" "[" "(")
	direct-abstract-declarator => "[" . type-qualifier-list "static" assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => "[" . "static" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => "[" . "static" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => "[" . "]" ("," ")" "[" "(")
	direct-abstract-declarator => "[" . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	direct-abstract-declarator => "[" . type-qualifier-list "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => "[" . type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 338
		"]" => shift 339
		"static" => shift 340
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 341
		"*" => shift 342

323:	direct-declarator => "(" . declarator ")" ("," ")" "[" "(")
	declarator => . pointer direct-declarator
	declarator => . direct-declarator
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	identifier => . '$ident
	identifier => . 'cpp-ident
	direct-abstract-declarator => "(" . ")" ("," ")" "[" "(")
	direct-abstract-declarator => "(" . parameter-type-list ")" ("," ")" "[" "(")
	parameter-type-list => . parameter-list
	parameter-type-list => . parameter-list "," "..."
	parameter-list => . parameter-declaration
	parameter-list => . parameter-list "," parameter-declaration
	parameter-declaration => . declaration-specifiers declarator
	parameter-declaration => . declaration-specifiers abstract-declarator
	parameter-declaration => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	direct-abstract-declarator => "(" . abstract-declarator ")" ("," ")" "[" "(")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
		"[" => shift 322
		direct-abstract-declarator => shift 324
		abstract-declarator => shift 335
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 133
		parameter-declaration => shift 134
		parameter-list => shift 135
		parameter-type-list => shift 336
		")" => shift 337
		'cpp-ident => shift 50
		'$ident => shift 51
		"*" => shift 52
		"(" => shift 323
		identifier => shift 54
		direct-declarator => shift 55
		pointer => shift 325
		declarator => shift 113

324:	direct-abstract-declarator => direct-abstract-declarator . "(" ")" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "(" parameter-type-list ")" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "*" "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list "static" assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "static" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "static" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	abstract-declarator => direct-abstract-declarator . ("," ")")
		"[" => shift 333
		"(" => shift 334
		")" => reduce 208
		"," => reduce 208

325:	declarator => pointer . direct-declarator ("," ")")
	direct-declarator => . identifier
	direct-declarator => . "(" declarator ")"
	direct-declarator => . direct-declarator "[" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "]"
	direct-declarator => . direct-declarator "[" assignment-expression "]"
	direct-declarator => . direct-declarator "[" "]"
	direct-declarator => . direct-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-declarator => . direct-declarator "[" type-qualifier-list "*" "]"
	direct-declarator => . direct-declarator "[" "*" "]"
	direct-declarator => . direct-declarator "(" parameter-type-list ")"
	direct-declarator => . direct-declarator "(" identifier-list ")"
	direct-declarator => . direct-declarator "(" ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	abstract-declarator => pointer . direct-abstract-declarator ("," ")")
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
	abstract-declarator => pointer . ("," ")")
		"[" => shift 322
		direct-abstract-declarator => shift 332
		'cpp-ident => shift 50
		'$ident => shift 51
		"(" => shift 323
		identifier => shift 54
		direct-declarator => shift 110
		")" => reduce 206
		"," => reduce 206

326:	parameter-declaration => declaration-specifiers abstract-declarator . ("," ")")
		")" => reduce 200
		"," => reduce 200

327:	direct-declarator => direct-declarator "(" identifier-list ")" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 187

328:	identifier-list => identifier-list "," . identifier ("," ")")
	identifier => . '$ident
	identifier => . 'cpp-ident
		'cpp-ident => shift 50
		'$ident => shift 51
		identifier => shift 331

329:	declaration => declaration-specifiers init-declarator-list $P1 ";" opt-code-comment . ("goto" "continue" "break" "return" "while" "do" "for" "if" "switch" ";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "case" "default" "{" '$end "}" "extern" 'cpp-stmt '$lone-comm "inline" "const" "volatile" "restrict" "void" "_Bool" 'typename "enum" "struct" "union" "_Complex" "float" "double" "long" "short" "signed" "int" "unsigned" "char" "auto" "register" "static" "typedef")
		$default => reduce 80

330:	external-declaration => "extern" '$string "{" translation-unit "}" . ('$end "}" "typedef" "static" "register" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" '$lone-comm 'cpp-stmt "extern")
		$default => reduce 284

331:	identifier-list => identifier-list "," identifier . ("," ")")
		")" => reduce 203
		"," => reduce 203

332:	direct-abstract-declarator => direct-abstract-declarator . "(" ")" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "(" parameter-type-list ")" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "*" "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list "static" assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "static" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "static" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator . "[" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	abstract-declarator => pointer direct-abstract-declarator . ("," ")")
		"[" => shift 333
		"(" => shift 334
		")" => reduce 207
		"," => reduce 207

333:	direct-abstract-declarator => direct-abstract-declarator "[" . type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" . type-qualifier-list "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	direct-abstract-declarator => direct-abstract-declarator "[" . "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator "[" . "static" type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator "[" . "static" type-qualifier-list "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator "[" . type-qualifier-list "static" assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" . "*" "]" ("," ")" "[" "(")
		"static" => shift 442
		"]" => shift 443
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 444
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 445
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 446

334:	direct-abstract-declarator => direct-abstract-declarator "(" . parameter-type-list ")" ("," ")" "[" "(")
	parameter-type-list => . parameter-list
	parameter-type-list => . parameter-list "," "..."
	parameter-list => . parameter-declaration
	parameter-list => . parameter-list "," parameter-declaration
	parameter-declaration => . declaration-specifiers declarator
	parameter-declaration => . declaration-specifiers abstract-declarator
	parameter-declaration => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	direct-abstract-declarator => direct-abstract-declarator "(" . ")" ("," ")" "[" "(")
		")" => shift 440
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 133
		parameter-declaration => shift 134
		parameter-list => shift 135
		parameter-type-list => shift 441

335:	direct-abstract-declarator => "(" abstract-declarator . ")" ("," ")" "[" "(")
		")" => shift 439

336:	direct-abstract-declarator => "(" parameter-type-list . ")" ("," ")" "[" "(")
		")" => shift 438

337:	direct-abstract-declarator => "(" ")" . ("," ")" "[" "(")
		$default => reduce 229

338:	direct-abstract-declarator => "[" assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 437

339:	direct-abstract-declarator => "[" "]" . ("," ")" "[" "(")
		$default => reduce 220

340:	direct-abstract-declarator => "[" "static" . type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => "[" "static" . type-qualifier-list "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 436

341:	direct-abstract-declarator => "[" type-qualifier-list . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	direct-abstract-declarator => "[" type-qualifier-list . "]" ("," ")" "[" "(")
	type-qualifier-list => type-qualifier-list . type-qualifier ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "]" "const" "volatile" "restrict" "static")
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => "[" type-qualifier-list . "static" assignment-expression "]" ("," ")" "[" "(")
		"static" => shift 433
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		"]" => shift 434
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 435

342:	unary-operator => "*" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	direct-abstract-declarator => "[" "*" . "]" ("," ")" "[" "(")
		"]" => shift 432
		$default => reduce 27

343:	parameter-list => parameter-list "," parameter-declaration . (")" ",")
		"," => reduce 198
		")" => reduce 198

344:	parameter-type-list => parameter-list "," "..." . (")")
		")" => reduce 196

345:	direct-declarator => direct-declarator "[" "static" type-qualifier-list assignment-expression . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"]" => shift 431

346:	multiplicative-expression => multiplicative-expression "%" cast-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		$default => reduce 37

347:	multiplicative-expression => multiplicative-expression "/" cast-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		$default => reduce 36

348:	multiplicative-expression => multiplicative-expression "*" cast-expression . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		$default => reduce 35

349:	multiplicative-expression => multiplicative-expression . "%" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	multiplicative-expression => multiplicative-expression . "/" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	multiplicative-expression => multiplicative-expression . "*" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	additive-expression => additive-expression "-" multiplicative-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
		"*" => shift 315
		"/" => shift 316
		"%" => shift 317
		$default => reduce 40

350:	multiplicative-expression => multiplicative-expression . "%" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	multiplicative-expression => multiplicative-expression . "/" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	multiplicative-expression => multiplicative-expression . "*" cast-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?" "*" "/" "%")
	additive-expression => additive-expression "+" multiplicative-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" ";" "?")
		"*" => shift 315
		"/" => shift 316
		"%" => shift 317
		$default => reduce 39

351:	additive-expression => additive-expression . "-" multiplicative-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "+" "-")
	additive-expression => additive-expression . "+" multiplicative-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "+" "-")
	shift-expression => shift-expression ">>" additive-expression . (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"+" => shift 313
		"-" => shift 314
		$default => reduce 43

352:	additive-expression => additive-expression . "-" multiplicative-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "+" "-")
	additive-expression => additive-expression . "+" multiplicative-expression (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "+" "-")
	shift-expression => shift-expression "<<" additive-expression . (":" "}" ")" "]" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"+" => shift 313
		"-" => shift 314
		$default => reduce 42

353:	shift-expression => shift-expression . ">>" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	shift-expression => shift-expression . "<<" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	relational-expression => relational-expression ">=" shift-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
		"<<" => shift 311
		">>" => shift 312
		$default => reduce 48

354:	shift-expression => shift-expression . ">>" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	shift-expression => shift-expression . "<<" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	relational-expression => relational-expression "<=" shift-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
		"<<" => shift 311
		">>" => shift 312
		$default => reduce 47

355:	shift-expression => shift-expression . ">>" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	shift-expression => shift-expression . "<<" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	relational-expression => relational-expression ">" shift-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
		"<<" => shift 311
		">>" => shift 312
		$default => reduce 46

356:	shift-expression => shift-expression . ">>" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	shift-expression => shift-expression . "<<" additive-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?" "<<" ">>")
	relational-expression => relational-expression "<" shift-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ";" "?")
		"<<" => shift 311
		">>" => shift 312
		$default => reduce 45

357:	relational-expression => relational-expression . ">=" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . "<=" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . ">" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . "<" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	equality-expression => equality-expression "!=" relational-expression . (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"<" => shift 307
		">" => shift 308
		"<=" => shift 309
		">=" => shift 310
		$default => reduce 51

358:	relational-expression => relational-expression . ">=" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . "<=" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . ">" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	relational-expression => relational-expression . "<" shift-expression (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "<" ">" "<=" ">=")
	equality-expression => equality-expression "==" relational-expression . (":" "}" ")" "]" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";")
		"<" => shift 307
		">" => shift 308
		"<=" => shift 309
		">=" => shift 310
		$default => reduce 50

359:	equality-expression => equality-expression . "!=" relational-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?" "==" "!=")
	equality-expression => equality-expression . "==" relational-expression (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?" "==" "!=")
	bitwise-and-expression => bitwise-and-expression "&" equality-expression . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" ";" "?")
		"==" => shift 305
		"!=" => shift 306
		$default => reduce 53

360:	bitwise-and-expression => bitwise-and-expression . "&" equality-expression (":" "}" ")" "]" "^" "|" "&&" "||" "," "?" ";" "&")
	bitwise-xor-expression => bitwise-xor-expression "^" bitwise-and-expression . (":" "}" ")" "]" "^" "|" "&&" "||" "," "?" ";")
		"&" => shift 304
		$default => reduce 55

361:	bitwise-xor-expression => bitwise-xor-expression . "^" bitwise-and-expression (":" "}" ")" "]" "," "||" "&&" "|" ";" "?" "^")
	bitwise-or-expression => bitwise-or-expression "|" bitwise-xor-expression . (":" "}" ")" "]" "," "||" "&&" "|" ";" "?")
		"^" => shift 303
		$default => reduce 57

362:	bitwise-or-expression => bitwise-or-expression . "|" bitwise-xor-expression (":" "}" ")" "]" "&&" "||" "," "?" ";" "|")
	logical-and-expression => logical-and-expression "&&" bitwise-or-expression . (":" "}" ")" "]" "&&" "||" "," "?" ";")
		"|" => shift 302
		$default => reduce 59

363:	cast-expression => "(" type-name ")" . cast-expression ("=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" ":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?")
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	postfix-expression => "(" type-name ")" . "{" initializer-list "," "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	postfix-expression => "(" type-name ")" . "{" initializer-list "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		"{" => shift 429
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 430

364:	direct-abstract-declarator => "(" . ")" ("," ")" "[" "(")
	direct-abstract-declarator => "(" . parameter-type-list ")" ("," ")" "[" "(")
	parameter-type-list => . parameter-list
	parameter-type-list => . parameter-list "," "..."
	parameter-list => . parameter-declaration
	parameter-list => . parameter-list "," parameter-declaration
	parameter-declaration => . declaration-specifiers declarator
	parameter-declaration => . declaration-specifiers abstract-declarator
	parameter-declaration => . declaration-specifiers
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
	direct-abstract-declarator => "(" . abstract-declarator ")" ("," ")" "[" "(")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
		"[" => shift 322
		"(" => shift 364
		"*" => shift 52
		direct-abstract-declarator => shift 324
		pointer => shift 365
		abstract-declarator => shift 335
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 133
		parameter-declaration => shift 134
		parameter-list => shift 135
		parameter-type-list => shift 336
		")" => shift 337

365:	abstract-declarator => pointer . direct-abstract-declarator ("," ")")
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
	abstract-declarator => pointer . ("," ")")
		"[" => shift 322
		"(" => shift 364
		direct-abstract-declarator => shift 332
		")" => reduce 206
		"," => reduce 206

366:	type-name => specifier-qualifier-list abstract-declarator . (")")
		")" => reduce 204

367:	primary-expression => "(" expression ")" . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "--" "++" "->" "." "(" "[" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		$default => reduce 5

368:	logical-and-expression => logical-and-expression . "&&" bitwise-or-expression (":" "}" ")" "]" "," "||" ";" "?" "&&")
	logical-or-expression => logical-or-expression "||" logical-and-expression . (":" "}" ")" "]" "," "||" ";" "?")
		"&&" => shift 300
		$default => reduce 61

369:	expression => expression . "," assignment-expression ("," ":")
	conditional-expression => logical-or-expression "?" expression . ":" conditional-expression (":" "}" ")" "]" "," ";")
		":" => shift 428
		"," => shift 244

370:	unary-expression => "sizeof" "(" type-name . ")" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
	postfix-expression => "(" type-name . ")" "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	postfix-expression => "(" type-name . ")" "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
		")" => shift 427

371:	postfix-expression => "(" type-name . ")" "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	postfix-expression => "(" type-name . ")" "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
		")" => shift 426

372:	postfix-expression => postfix-expression "->" identifier . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 11

373:	postfix-expression => postfix-expression "." identifier . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 10

374:	postfix-expression => postfix-expression "(" ")" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 9

375:	argument-expression-list => declaration-specifiers . abstract-declarator ("," ")")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
		"[" => shift 322
		"(" => shift 364
		"*" => shift 52
		direct-abstract-declarator => shift 324
		pointer => shift 365
		abstract-declarator => shift 425

376:	argument-expression-list => assignment-expression . ("," ")")
		")" => reduce 16
		"," => reduce 16

377:	argument-expression-list => argument-expression-list . "," declaration-specifiers abstract-declarator ("," ")")
	argument-expression-list => argument-expression-list . "," assignment-expression ("," ")")
	postfix-expression => postfix-expression "(" argument-expression-list . ")" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		")" => shift 423
		"," => shift 424

378:	expression => expression . "," assignment-expression ("," "]")
	postfix-expression => postfix-expression "[" expression . "]" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		"]" => shift 422
		"," => shift 244

379:	assignment-expression => unary-expression assignment-operator assignment-expression . (":" "}" ")" "]" "," ";")
		$default => reduce 65

380:	direct-declarator => direct-declarator "[" type-qualifier-list "*" "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 184

381:	direct-declarator => direct-declarator "[" type-qualifier-list "static" assignment-expression . "]" (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		"]" => shift 421

382:	direct-declarator => direct-declarator "[" type-qualifier-list assignment-expression "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 178

383:	initializer => "{" initializer-list "," . "}" (";" "}" ",")
	initializer-list => initializer-list "," . designation initializer ("}" ",")
	designation => . designator-list "="
	designator-list => . designator
	designator-list => . designator-list designator
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	initializer-list => initializer-list "," . initializer ("}" ",")
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 418
		"." => shift 255
		"[" => shift 256
		designator => shift 257
		designator-list => shift 258
		designation => shift 419
		"}" => shift 420

384:	initializer => "{" initializer-list "}" . (";" "}" ",")
		"," => reduce 232
		"}" => reduce 232
		";" => reduce 232

385:	initializer-list => designation initializer . ("}" ",")
		"," => reduce 234
		"}" => reduce 234

386:	designation => designator-list "=" . ("{" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 238

387:	designator-list => designator-list designator . ("[" "." "=")
		"=" => reduce 240
		"." => reduce 240
		"[" => reduce 240

388:	designator => "[" constant-expression . "]" ("." "[" "=")
		"]" => shift 417

389:	designator => "." identifier . ("." "[" "=")
		"=" => reduce 242
		"[" => reduce 242
		"." => reduce 242

390:	jump-statement => "return" expression ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 276

391:	jump-statement => "goto" identifier ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 273

392:	initial-clause => declaration . (";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 272

393:	initial-clause => ";" . (";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 271

394:	expression => expression . "," assignment-expression ("," ";")
	initial-clause => expression . ";" (";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		";" => shift 416
		"," => shift 244

395:	iteration-statement => "for" "(" initial-clause . ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" "(" initial-clause . ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" "(" initial-clause . expression ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	iteration-statement => "for" "(" initial-clause . expression ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 414
		";" => shift 415

396:	iteration-statement => "do" statement "while" . "(" expression ")" ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"(" => shift 413

397:	expression => expression . "," assignment-expression ("," ")")
	iteration-statement => "while" "(" expression . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 412
		"," => shift 244

398:	expression => expression . "," assignment-expression ("," ")")
	selection-statement => "switch" "(" expression . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 411
		"," => shift 244

399:	selection-statement => "if" "(" expression . ")" statement "else" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => expression . "," assignment-expression ("," ")")
	selection-statement => "if" "(" expression . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"," => shift 244
		")" => shift 410

400:	expression => expression "," assignment-expression . ("]" ":" ")" "," ";")
		$default => reduce 78

401:	labeled-statement => "default" ":" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 252

402:	labeled-statement => "case" constant-expression ":" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 409

403:	labeled-statement => identifier ":" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 250

404:	compound-statement => "{" block-item-list "}" opt-code-comment . ('$end '$lone-comm "else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 253

405:	struct-declarator => declarator ":" constant-expression . ("," ";")
		";" => reduce 159
		"," => reduce 159

406:	struct-declarator-list => struct-declarator-list "," struct-declarator . ("," ";")
		";" => reduce 157
		"," => reduce 157

407:	struct-declaration => specifier-qualifier-list struct-declarator-list ";" opt-code-comment . ('$lone-comm "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "}")
		$default => reduce 151

408:	enum-specifier => "enum" identifier "{" enumerator-list "," "}" . ("[" ")" "," ":" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" ";" "(" '$ident 'cpp-ident "*")
		$default => reduce 162

409:	labeled-statement => "case" constant-expression ":" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 251

410:	selection-statement => "if" "(" expression ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	selection-statement => "if" "(" expression ")" . statement "else" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 469

411:	selection-statement => "switch" "(" expression ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 468

412:	iteration-statement => "while" "(" expression ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 467

413:	iteration-statement => "do" statement "while" "(" . expression ")" ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 466

414:	iteration-statement => "for" "(" initial-clause expression . ";" expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => expression . "," assignment-expression ("," ";")
	iteration-statement => "for" "(" initial-clause expression . ";" ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"," => shift 244
		";" => shift 465

415:	iteration-statement => "for" "(" initial-clause ";" . expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	iteration-statement => "for" "(" initial-clause ";" . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 463
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 464

416:	initial-clause => expression ";" . (";" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		$default => reduce 270

417:	designator => "[" constant-expression "]" . ("." "[" "=")
		"=" => reduce 241
		"[" => reduce 241
		"." => reduce 241

418:	initializer-list => initializer-list "," initializer . ("}" ",")
		"," => reduce 237
		"}" => reduce 237

419:	initializer-list => initializer-list "," designation . initializer ("}" ",")
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 462

420:	initializer => "{" initializer-list "," "}" . (";" "}" ",")
		"," => reduce 233
		"}" => reduce 233
		";" => reduce 233

421:	direct-declarator => direct-declarator "[" type-qualifier-list "static" assignment-expression "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 183

422:	postfix-expression => postfix-expression "[" expression "]" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 7

423:	postfix-expression => postfix-expression "(" argument-expression-list ")" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 8

424:	argument-expression-list => argument-expression-list "," . assignment-expression ("," ")")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	argument-expression-list => argument-expression-list "," . declaration-specifiers abstract-declarator ("," ")")
	declaration-specifiers => . storage-class-specifier
	declaration-specifiers => . storage-class-specifier declaration-specifiers
	declaration-specifiers => . type-specifier
	declaration-specifiers => . type-specifier declaration-specifiers
	declaration-specifiers => . type-qualifier
	declaration-specifiers => . type-qualifier declaration-specifiers
	declaration-specifiers => . function-specifier
	declaration-specifiers => . function-specifier declaration-specifiers
	storage-class-specifier => . "auto"
	storage-class-specifier => . "extern"
	storage-class-specifier => . "register"
	storage-class-specifier => . "static"
	storage-class-specifier => . "typedef"
	type-specifier => . "void"
	type-specifier => . fixed-type-specifier
	type-specifier => . float-type-specifier
	type-specifier => . "_Bool"
	type-specifier => . complex-type-specifier
	type-specifier => . struct-or-union-specifier
	type-specifier => . enum-specifier
	type-specifier => . typedef-name
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	function-specifier => . "inline"
	fixed-type-specifier => . "short"
	fixed-type-specifier => . "short" "int"
	fixed-type-specifier => . "signed" "short"
	fixed-type-specifier => . "signed" "short" "int"
	fixed-type-specifier => . "int"
	fixed-type-specifier => . "signed"
	fixed-type-specifier => . "signed" "int"
	fixed-type-specifier => . "long"
	fixed-type-specifier => . "long" "int"
	fixed-type-specifier => . "signed" "long"
	fixed-type-specifier => . "signed" "long" "int"
	fixed-type-specifier => . "long" "long"
	fixed-type-specifier => . "long" "long" "int"
	fixed-type-specifier => . "signed" "long" "long"
	fixed-type-specifier => . "signed" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "short" "int"
	fixed-type-specifier => . "unsigned" "short"
	fixed-type-specifier => . "unsigned" "int"
	fixed-type-specifier => . "unsigned"
	fixed-type-specifier => . "unsigned" "long" "int"
	fixed-type-specifier => . "unsigned" "long"
	fixed-type-specifier => . "unsigned" "long" "long" "int"
	fixed-type-specifier => . "unsigned" "long" "long"
	fixed-type-specifier => . "char"
	fixed-type-specifier => . "signed" "char"
	fixed-type-specifier => . "unsigned" "char"
	float-type-specifier => . "float"
	float-type-specifier => . "double"
	float-type-specifier => . "long" "double"
	complex-type-specifier => . "_Complex"
	complex-type-specifier => . "float" "_Complex"
	complex-type-specifier => . "double" "_Complex"
	complex-type-specifier => . "long" "double" "_Complex"
	struct-or-union-specifier => . "struct" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "struct" identifier
	struct-or-union-specifier => . "union" identifier "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" "{" struct-declaration-list "}"
	struct-or-union-specifier => . "union" identifier
	enum-specifier => . "enum" identifier "{" enumerator-list "}"
	enum-specifier => . "enum" identifier "{" enumerator-list "," "}"
	enum-specifier => . "enum" "{" enumerator-list "}"
	enum-specifier => . "enum" "{" enumerator-list "," "}"
	enum-specifier => . "enum" identifier
	typedef-name => . 'typename
		'typename => shift 1
		"enum" => shift 2
		"union" => shift 3
		"struct" => shift 4
		"_Complex" => shift 5
		"double" => shift 6
		"float" => shift 7
		"char" => shift 8
		"unsigned" => shift 9
		"long" => shift 10
		"int" => shift 11
		"signed" => shift 12
		"short" => shift 13
		"inline" => shift 14
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		typedef-name => shift 18
		enum-specifier => shift 19
		struct-or-union-specifier => shift 20
		complex-type-specifier => shift 21
		"_Bool" => shift 22
		float-type-specifier => shift 23
		fixed-type-specifier => shift 24
		"void" => shift 25
		"typedef" => shift 26
		"static" => shift 27
		"register" => shift 28
		"extern" => shift 58
		"auto" => shift 29
		function-specifier => shift 30
		type-qualifier => shift 31
		type-specifier => shift 32
		storage-class-specifier => shift 33
		declaration-specifiers => shift 460
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 461

425:	argument-expression-list => declaration-specifiers abstract-declarator . ("," ")")
		")" => reduce 18
		"," => reduce 18

426:	postfix-expression => "(" type-name ")" . "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	postfix-expression => "(" type-name ")" . "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
		"{" => shift 429

427:	postfix-expression => "(" type-name ")" . "{" initializer-list "," "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	postfix-expression => "(" type-name ")" . "{" initializer-list "}" (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" "[" "(" "." "->" "++" "--")
	unary-expression => "sizeof" "(" type-name ")" . (":" "}" ")" "]" "*" "/" "%" "-" "+" "<<" ">>" ">=" "<=" ">" "<" "==" "!=" "&" "^" "|" "&&" "||" "," "?" ";" "=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=")
		"{" => shift 429
		$default => reduce 25

428:	conditional-expression => logical-or-expression "?" expression ":" . conditional-expression (":" "}" ")" "]" "," ";")
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		primary-expression => shift 163
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		"(" => shift 162
		unary-expression => shift 227
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		logical-and-expression => shift 155
		logical-or-expression => shift 164
		conditional-expression => shift 459

429:	postfix-expression => "(" type-name ")" "{" . initializer-list "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	initializer-list => . designation initializer
	initializer-list => . initializer
	initializer-list => . initializer-list "," designation initializer
	initializer-list => . initializer-list "," initializer
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	designation => . designator-list "="
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	designator-list => . designator
	designator-list => . designator-list designator
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => "(" type-name ")" "{" . initializer-list "," "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	initializer-list => . designation initializer
	initializer-list => . initializer
	initializer-list => . initializer-list "," designation initializer
	initializer-list => . initializer-list "," initializer
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	designation => . designator-list "="
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	designator-list => . designator
	designator-list => . designator-list designator
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		"." => shift 255
		"[" => shift 256
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		designator => shift 257
		unary-expression => shift 170
		conditional-expression => shift 171
		designator-list => shift 258
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 259
		designation => shift 260
		initializer-list => shift 458

430:	cast-expression => "(" type-name ")" cast-expression . ("=" "+=" "-=" "*=" "/=" "%=" "<<=" ">>=" "&=" "^=" "|=" ":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?")
		$default => reduce 33

431:	direct-declarator => direct-declarator "[" "static" type-qualifier-list assignment-expression "]" . (":" ")" "," "=" ";" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "[" "(" "{")
		$default => reduce 182

432:	direct-abstract-declarator => "[" "*" "]" . ("," ")" "[" "(")
		$default => reduce 225

433:	direct-abstract-declarator => "[" type-qualifier-list "static" . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 457

434:	direct-abstract-declarator => "[" type-qualifier-list "]" . ("," ")" "[" "(")
		$default => reduce 218

435:	direct-abstract-declarator => "[" type-qualifier-list assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 456

436:	direct-abstract-declarator => "[" "static" type-qualifier-list . "]" ("," ")" "[" "(")
	type-qualifier-list => type-qualifier-list . type-qualifier ("]" "const" "volatile" "restrict" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => "[" "static" type-qualifier-list . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 454
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		"]" => shift 455

437:	direct-abstract-declarator => "[" assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 219

438:	direct-abstract-declarator => "(" parameter-type-list ")" . ("," ")" "[" "(")
		$default => reduce 228

439:	direct-abstract-declarator => "(" abstract-declarator ")" . ("," ")" "[" "(")
		$default => reduce 209

440:	direct-abstract-declarator => direct-abstract-declarator "(" ")" . ("," ")" "[" "(")
		$default => reduce 227

441:	direct-abstract-declarator => direct-abstract-declarator "(" parameter-type-list . ")" ("," ")" "[" "(")
		")" => shift 453

442:	direct-abstract-declarator => direct-abstract-declarator "[" "static" . type-qualifier-list "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" "static" . type-qualifier-list assignment-expression "]" ("," ")" "[" "(")
	type-qualifier-list => . type-qualifier
	type-qualifier-list => . type-qualifier-list type-qualifier
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 114
		type-qualifier-list => shift 452

443:	direct-abstract-declarator => direct-abstract-declarator "[" "]" . ("," ")" "[" "(")
		$default => reduce 213

444:	direct-abstract-declarator => direct-abstract-declarator "[" "*" . "]" ("," ")" "[" "(")
	unary-operator => "*" . ("(" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
		"]" => shift 451
		$default => reduce 27

445:	direct-abstract-declarator => direct-abstract-declarator "[" assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 450

446:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list . "static" assignment-expression "]" ("," ")" "[" "(")
	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list . "]" ("," ")" "[" "(")
	type-qualifier-list => type-qualifier-list . type-qualifier ("static" "]" "const" "volatile" "restrict" "++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident)
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 447
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		"]" => shift 448
		"static" => shift 449

447:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 484

448:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "]" . ("," ")" "[" "(")
		$default => reduce 211

449:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "static" . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 483

450:	direct-abstract-declarator => direct-abstract-declarator "[" assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 212

451:	direct-abstract-declarator => direct-abstract-declarator "[" "*" "]" . ("," ")" "[" "(")
		$default => reduce 224

452:	direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list . assignment-expression "]" ("," ")" "[" "(")
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	type-qualifier-list => type-qualifier-list . type-qualifier ("++" "--" "sizeof" "&" "*" "+" "-" "~" "!" "(" '$string '$fixed '$float '$chlit '$ident 'cpp-ident "const" "volatile" "restrict" "]")
	type-qualifier => . "const"
	type-qualifier => . "volatile"
	type-qualifier => . "restrict"
	direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list . "]" ("," ")" "[" "(")
		"]" => shift 481
		"restrict" => shift 15
		"volatile" => shift 16
		"const" => shift 17
		type-qualifier => shift 128
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 482

453:	direct-abstract-declarator => direct-abstract-declarator "(" parameter-type-list ")" . ("," ")" "[" "(")
		$default => reduce 226

454:	direct-abstract-declarator => "[" "static" type-qualifier-list assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 480

455:	direct-abstract-declarator => "[" "static" type-qualifier-list "]" . ("," ")" "[" "(")
		$default => reduce 222

456:	direct-abstract-declarator => "[" type-qualifier-list assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 217

457:	direct-abstract-declarator => "[" type-qualifier-list "static" assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 479

458:	postfix-expression => "(" type-name ")" "{" initializer-list . "," "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
	initializer-list => initializer-list . "," initializer ("," "}")
	initializer-list => initializer-list . "," designation initializer ("," "}")
	postfix-expression => "(" type-name ")" "{" initializer-list . "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		"}" => shift 477
		"," => shift 478

459:	conditional-expression => logical-or-expression "?" expression ":" conditional-expression . (":" "}" ")" "]" "," ";")
		$default => reduce 63

460:	argument-expression-list => argument-expression-list "," declaration-specifiers . abstract-declarator ("," ")")
	abstract-declarator => . pointer
	abstract-declarator => . pointer direct-abstract-declarator
	abstract-declarator => . direct-abstract-declarator
	pointer => . "*" type-qualifier-list
	pointer => . "*"
	pointer => . "*" type-qualifier-list pointer
	pointer => . "*" pointer
	direct-abstract-declarator => . "(" abstract-declarator ")"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" type-qualifier-list "]"
	direct-abstract-declarator => . "[" assignment-expression "]"
	direct-abstract-declarator => . "[" "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list assignment-expression "]"
	direct-abstract-declarator => . "[" "static" type-qualifier-list "]"
	direct-abstract-declarator => . "[" type-qualifier-list "static" assignment-expression "]"
	direct-abstract-declarator => . direct-abstract-declarator "[" "*" "]"
	direct-abstract-declarator => . "[" "*" "]"
	direct-abstract-declarator => . direct-abstract-declarator "(" parameter-type-list ")"
	direct-abstract-declarator => . direct-abstract-declarator "(" ")"
	direct-abstract-declarator => . "(" parameter-type-list ")"
	direct-abstract-declarator => . "(" ")"
		"[" => shift 322
		"(" => shift 364
		"*" => shift 52
		direct-abstract-declarator => shift 324
		pointer => shift 365
		abstract-declarator => shift 476

461:	argument-expression-list => argument-expression-list "," assignment-expression . ("," ")")
		")" => reduce 17
		"," => reduce 17

462:	initializer-list => initializer-list "," designation initializer . ("}" ",")
		"," => reduce 236
		"}" => reduce 236

463:	iteration-statement => "for" "(" initial-clause ";" ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 475

464:	expression => expression . "," assignment-expression ("," ")")
	iteration-statement => "for" "(" initial-clause ";" expression . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 474
		"," => shift 244

465:	iteration-statement => "for" "(" initial-clause expression ";" . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	iteration-statement => "for" "(" initial-clause expression ";" . expression ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		assignment-expression => shift 180
		expression => shift 472
		")" => shift 473

466:	expression => expression . "," assignment-expression ("," ")")
	iteration-statement => "do" statement "while" "(" expression . ")" ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 471
		"," => shift 244

467:	iteration-statement => "while" "(" expression ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 264

468:	selection-statement => "switch" "(" expression ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 263

469:	selection-statement => "if" "(" expression ")" statement . "else" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	selection-statement => "if" "(" expression ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		"else" => shift 470
		$default => reduce 261
		["else" => reduce 261] REMOVED by precedence

470:	selection-statement => "if" "(" expression ")" statement "else" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 492

471:	iteration-statement => "do" statement "while" "(" expression ")" . ";" ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		";" => shift 491

472:	expression => expression . "," assignment-expression ("," ")")
	iteration-statement => "for" "(" initial-clause expression ";" expression . ")" statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		")" => shift 490
		"," => shift 244

473:	iteration-statement => "for" "(" initial-clause expression ";" ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 489

474:	iteration-statement => "for" "(" initial-clause ";" expression ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 488

475:	iteration-statement => "for" "(" initial-clause ";" ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 269

476:	argument-expression-list => argument-expression-list "," declaration-specifiers abstract-declarator . ("," ")")
		")" => reduce 19
		"," => reduce 19

477:	postfix-expression => "(" type-name ")" "{" initializer-list "}" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 14

478:	initializer-list => initializer-list "," . designation initializer ("," "}")
	designation => . designator-list "="
	designator-list => . designator
	designator-list => . designator-list designator
	designator => . "[" constant-expression "]"
	designator => . "." identifier
	initializer-list => initializer-list "," . initializer ("," "}")
	initializer => . assignment-expression
	initializer => . "{" initializer-list "}"
	initializer => . "{" initializer-list "," "}"
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
	postfix-expression => "(" type-name ")" "{" initializer-list "," . "}" (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		"}" => shift 487
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		'cpp-ident => shift 50
		'$ident => shift 51
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		identifier => shift 154
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		"{" => shift 175
		assignment-expression => shift 176
		initializer => shift 418
		"." => shift 255
		"[" => shift 256
		designator => shift 257
		designator-list => shift 258
		designation => shift 419

479:	direct-abstract-declarator => "[" type-qualifier-list "static" assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 223

480:	direct-abstract-declarator => "[" "static" type-qualifier-list assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 221

481:	direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list "]" . ("," ")" "[" "(")
		$default => reduce 215

482:	direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 486

483:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression . "]" ("," ")" "[" "(")
		"]" => shift 485

484:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 210

485:	direct-abstract-declarator => direct-abstract-declarator "[" type-qualifier-list "static" assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 216

486:	direct-abstract-declarator => direct-abstract-declarator "[" "static" type-qualifier-list assignment-expression "]" . ("," ")" "[" "(")
		$default => reduce 214

487:	postfix-expression => "(" type-name ")" "{" initializer-list "," "}" . (":" "}" ")" "]" "," "||" "&&" "|" "^" "&" "!=" "==" "<" ">" "<=" ">=" ">>" "<<" "+" "-" "%" "/" "*" ";" "?" "[" "(" "." "->" "++" "--" "|=" "^=" "&=" ">>=" "<<=" "%=" "/=" "*=" "-=" "+=" "=")
		$default => reduce 15

488:	iteration-statement => "for" "(" initial-clause ";" expression ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 268

489:	iteration-statement => "for" "(" initial-clause expression ";" ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 267

490:	iteration-statement => "for" "(" initial-clause expression ";" expression ")" . statement ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
	statement => . labeled-statement
	statement => . compound-statement
	statement => . expression-statement
	statement => . selection-statement
	statement => . iteration-statement
	statement => . jump-statement
	statement => . cpp-statement
	labeled-statement => . identifier ":" statement
	labeled-statement => . "case" constant-expression ":" statement
	labeled-statement => . "default" ":" statement
	compound-statement => . "{" block-item-list "}" opt-code-comment
	compound-statement => . "{" "}"
	expression-statement => . expression ";"
	expression-statement => . ";"
	selection-statement => . "if" "(" expression ")" statement
	selection-statement => . "if" "(" expression ")" statement "else" statement
	selection-statement => . "switch" "(" expression ")" statement
	iteration-statement => . "while" "(" expression ")" statement
	iteration-statement => . "do" statement "while" "(" expression ")" ";"
	iteration-statement => . "for" "(" initial-clause expression ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause expression ";" ")" statement
	iteration-statement => . "for" "(" initial-clause ";" expression ")" statement
	iteration-statement => . "for" "(" initial-clause ";" ")" statement
	jump-statement => . "goto" identifier ";"
	jump-statement => . "continue" ";"
	jump-statement => . "break" ";"
	jump-statement => . "return" expression ";"
	jump-statement => . "return" ";"
	cpp-statement => . 'cpp-stmt
	expression => . assignment-expression
	expression => . expression "," assignment-expression
	identifier => . '$ident
	identifier => . 'cpp-ident
	assignment-expression => . conditional-expression
	assignment-expression => . unary-expression assignment-operator assignment-expression
	unary-expression => . postfix-expression
	unary-expression => . "++" unary-expression
	unary-expression => . "--" unary-expression
	unary-expression => . unary-operator cast-expression
	unary-expression => . "sizeof" unary-expression
	unary-expression => . "sizeof" "(" type-name ")"
	conditional-expression => . logical-or-expression
	conditional-expression => . logical-or-expression "?" expression ":" conditional-expression
	postfix-expression => . primary-expression
	postfix-expression => . postfix-expression "[" expression "]"
	postfix-expression => . postfix-expression "(" argument-expression-list ")"
	postfix-expression => . postfix-expression "(" ")"
	postfix-expression => . postfix-expression "." identifier
	postfix-expression => . postfix-expression "->" identifier
	postfix-expression => . postfix-expression "++"
	postfix-expression => . postfix-expression "--"
	postfix-expression => . "(" type-name ")" "{" initializer-list "}"
	postfix-expression => . "(" type-name ")" "{" initializer-list "," "}"
	unary-operator => . "&"
	unary-operator => . "*"
	unary-operator => . "+"
	unary-operator => . "-"
	unary-operator => . "~"
	unary-operator => . "!"
	logical-or-expression => . logical-and-expression
	logical-or-expression => . logical-or-expression "||" logical-and-expression
	primary-expression => . identifier
	primary-expression => . constant
	primary-expression => . string-literal
	primary-expression => . "(" expression ")"
	logical-and-expression => . bitwise-or-expression
	logical-and-expression => . logical-and-expression "&&" bitwise-or-expression
	bitwise-or-expression => . bitwise-xor-expression
	bitwise-or-expression => . bitwise-or-expression "|" bitwise-xor-expression
	constant => . '$fixed
	constant => . '$float
	constant => . '$chlit
	string-literal => . '$string
	string-literal => . string-literal '$string
	bitwise-xor-expression => . bitwise-and-expression
	bitwise-xor-expression => . bitwise-xor-expression "^" bitwise-and-expression
	bitwise-and-expression => . equality-expression
	bitwise-and-expression => . bitwise-and-expression "&" equality-expression
	equality-expression => . relational-expression
	equality-expression => . equality-expression "==" relational-expression
	equality-expression => . equality-expression "!=" relational-expression
	relational-expression => . shift-expression
	relational-expression => . relational-expression "<" shift-expression
	relational-expression => . relational-expression ">" shift-expression
	relational-expression => . relational-expression "<=" shift-expression
	relational-expression => . relational-expression ">=" shift-expression
	shift-expression => . additive-expression
	shift-expression => . shift-expression "<<" additive-expression
	shift-expression => . shift-expression ">>" additive-expression
	additive-expression => . multiplicative-expression
	additive-expression => . additive-expression "+" multiplicative-expression
	additive-expression => . additive-expression "-" multiplicative-expression
	multiplicative-expression => . cast-expression
	multiplicative-expression => . multiplicative-expression "*" cast-expression
	multiplicative-expression => . multiplicative-expression "/" cast-expression
	multiplicative-expression => . multiplicative-expression "%" cast-expression
	cast-expression => . unary-expression
	cast-expression => . "(" type-name ")" cast-expression
		cast-expression => shift 139
		multiplicative-expression => shift 140
		additive-expression => shift 141
		shift-expression => shift 142
		relational-expression => shift 143
		equality-expression => shift 144
		bitwise-and-expression => shift 145
		'$string => shift 146
		'$chlit => shift 147
		'$float => shift 148
		'$fixed => shift 149
		bitwise-xor-expression => shift 150
		bitwise-or-expression => shift 151
		string-literal => shift 152
		constant => shift 153
		logical-and-expression => shift 155
		"!" => shift 156
		"~" => shift 157
		"-" => shift 158
		"+" => shift 159
		"*" => shift 174
		"&" => shift 161
		"(" => shift 162
		primary-expression => shift 163
		logical-or-expression => shift 164
		"sizeof" => shift 165
		unary-operator => shift 166
		"--" => shift 167
		"++" => shift 168
		postfix-expression => shift 169
		unary-expression => shift 170
		conditional-expression => shift 171
		'cpp-ident => shift 50
		'$ident => shift 51
		assignment-expression => shift 180
		'cpp-stmt => shift 34
		"return" => shift 181
		"break" => shift 182
		"continue" => shift 183
		"goto" => shift 184
		"for" => shift 185
		"do" => shift 186
		"while" => shift 187
		"switch" => shift 188
		"if" => shift 189
		";" => shift 190
		expression => shift 191
		"{" => shift 104
		"default" => shift 192
		"case" => shift 193
		identifier => shift 194
		cpp-statement => shift 195
		jump-statement => shift 196
		iteration-statement => shift 197
		selection-statement => shift 198
		expression-statement => shift 199
		compound-statement => shift 200
		labeled-statement => shift 201
		statement => shift 493

491:	iteration-statement => "do" statement "while" "(" expression ")" ";" . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 265

492:	selection-statement => "if" "(" expression ")" statement "else" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 262

493:	iteration-statement => "for" "(" initial-clause expression ";" expression ")" statement . ("else" "typedef" "static" "register" "extern" "auto" "char" "unsigned" "int" "signed" "short" "long" "double" "float" "_Complex" "union" "struct" "enum" 'typename "_Bool" "void" "restrict" "volatile" "const" "inline" "default" "case" "{" 'cpp-ident '$ident '$chlit '$float '$fixed '$string "(" "!" "~" "-" "+" "*" "&" "sizeof" "--" "++" ";" "switch" "if" "for" "do" "while" "return" "break" "continue" "goto" 'cpp-stmt "}")
		$default => reduce 266

