PageRenderTime 72ms CodeModel.GetById 24ms RepoModel.GetById 1ms app.codeStats 1ms

/y.output

https://bitbucket.org/mprateek/occ
Unknown | 13623 lines | 10501 code | 3122 blank | 0 comment | 0 complexity | 16ae33ba1644d2da752b42f55c8173ab MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1. Terminals which are not used
  2. TYPE_NAME
  3. SYNCHRONIZED
  4. CLASSNAME
  5. TRY
  6. CATCH
  7. FINALLY
  8. THROW
  9. ALLOC
  10. RETAIN
  11. RELEASE
  12. AUTORELEASE
  13. INCLUDE
  14. IMPORT
  15. IFX
  16. State 169 conflicts: 1 shift/reduce
  17. State 297 conflicts: 1 shift/reduce
  18. State 833 conflicts: 1 shift/reduce
  19. Grammar
  20. 0 $accept: start_prog $end
  21. 1 class_interface: INTERFACE IDENTIFIER END
  22. 2 | INTERFACE IDENTIFIER ':' IDENTIFIER END
  23. 3 | INTERFACE IDENTIFIER protocol_reference_list END
  24. 4 | INTERFACE IDENTIFIER ':' IDENTIFIER protocol_reference_list END
  25. 5 | INTERFACE IDENTIFIER instance_variables END
  26. 6 | INTERFACE IDENTIFIER ':' IDENTIFIER instance_variables END
  27. 7 | INTERFACE IDENTIFIER protocol_reference_list instance_variables END
  28. 8 | INTERFACE IDENTIFIER ':' IDENTIFIER protocol_reference_list instance_variables END
  29. 9 | INTERFACE IDENTIFIER interface_declaration_list END
  30. 10 | INTERFACE IDENTIFIER ':' IDENTIFIER interface_declaration_list END
  31. 11 | INTERFACE IDENTIFIER protocol_reference_list interface_declaration_list END
  32. 12 | INTERFACE IDENTIFIER ':' IDENTIFIER protocol_reference_list interface_declaration_list END
  33. 13 | INTERFACE IDENTIFIER instance_variables interface_declaration_list END
  34. 14 | INTERFACE IDENTIFIER ':' IDENTIFIER instance_variables interface_declaration_list END
  35. 15 | INTERFACE IDENTIFIER protocol_reference_list instance_variables interface_declaration_list END
  36. 16 | INTERFACE IDENTIFIER ':' IDENTIFIER protocol_reference_list instance_variables interface_declaration_list END
  37. 17 | INTERFACE error END
  38. 18 | INTERFACE error ':' IDENTIFIER END
  39. 19 | INTERFACE error ':' IDENTIFIER protocol_reference_list END
  40. 20 | INTERFACE error instance_variables END
  41. 21 | INTERFACE error ':' IDENTIFIER instance_variables END
  42. 22 | INTERFACE IDENTIFIER error IDENTIFIER instance_variables interface_declaration_list END
  43. 23 class_implementation: IMPLEMENTATION IDENTIFIER END
  44. 24 | IMPLEMENTATION IDENTIFIER ':' IDENTIFIER END
  45. 25 | IMPLEMENTATION IDENTIFIER instance_variables END
  46. 26 | IMPLEMENTATION IDENTIFIER ':' IDENTIFIER instance_variables END
  47. 27 | IMPLEMENTATION IDENTIFIER implementation_definition_list END
  48. 28 | IMPLEMENTATION IDENTIFIER ':' IDENTIFIER implementation_definition_list END
  49. 29 | IMPLEMENTATION IDENTIFIER instance_variables implementation_definition_list END
  50. 30 | IMPLEMENTATION IDENTIFIER ':' IDENTIFIER instance_variables implementation_definition_list END
  51. 31 | IMPLEMENTATION error
  52. 32 | IMPLEMENTATION IDENTIFIER error
  53. 33 | IMPLEMENTATION IDENTIFIER ':' error
  54. 34 category_interface: INTERFACE IDENTIFIER '(' IDENTIFIER ')' END
  55. 35 | INTERFACE IDENTIFIER '(' IDENTIFIER ')' protocol_reference_list END
  56. 36 | INTERFACE IDENTIFIER '(' IDENTIFIER ')' interface_declaration_list END
  57. 37 | INTERFACE IDENTIFIER '(' IDENTIFIER ')' protocol_reference_list interface_declaration_list END
  58. 38 | INTERFACE IDENTIFIER error IDENTIFIER ')' END
  59. 39 | INTERFACE IDENTIFIER error IDENTIFIER ')' protocol_reference_list END
  60. 40 | INTERFACE IDENTIFIER '(' IDENTIFIER error
  61. 41 | INTERFACE IDENTIFIER '(' IDENTIFIER ')' error
  62. 42 | INTERFACE IDENTIFIER '(' IDENTIFIER ')' protocol_reference_list interface_declaration_list error
  63. 43 category_implementation: IMPLEMENTATION IDENTIFIER '(' IDENTIFIER ')' END
  64. 44 | IMPLEMENTATION IDENTIFIER '(' IDENTIFIER ')' implementation_definition_list END
  65. 45 | IMPLEMENTATION IDENTIFIER '(' error ')' implementation_definition_list END
  66. 46 | IMPLEMENTATION IDENTIFIER '(' IDENTIFIER error implementation_definition_list END
  67. 47 | IMPLEMENTATION IDENTIFIER '(' IDENTIFIER ')' error
  68. 48 protocol_declaration: PROTOCOL protocol_name END
  69. 49 | PROTOCOL protocol_name protocol_reference_list END
  70. 50 | PROTOCOL protocol_name interface_declaration_list END
  71. 51 | PROTOCOL protocol_name protocol_reference_list interface_declaration_list END
  72. 52 | PROTOCOL error protocol_reference_list interface_declaration_list END
  73. 53 class_declaration_list: CLASS class_list ';'
  74. 54 | CLASS class_list error
  75. 55 class_list: IDENTIFIER
  76. 56 | class_list ',' IDENTIFIER
  77. 57 | class_list error
  78. 58 protocol_reference_list: '<' protocol_list '>'
  79. 59 | '<' protocol_list error
  80. 60 protocol_list: protocol_name
  81. 61 | protocol_list ',' protocol_name
  82. 62 protocol_name: IDENTIFIER
  83. 63 instance_variables: '{' objc_declaration_list '}'
  84. 64 | '{' objc_declaration_list instance_variables_list '}'
  85. 65 | '{' struct_declaration_list '}'
  86. 66 | '{' visibility_specification struct_declaration_list '}'
  87. 67 | '{' struct_declaration_list instance_variables_list '}'
  88. 68 | '{' visibility_specification struct_declaration_list instance_variables_list '}'
  89. 69 | '{' error struct_declaration_list instance_variables_list '}'
  90. 70 | '{' visibility_specification struct_declaration_list error
  91. 71 | '{' struct_declaration_list instance_variables_list error
  92. 72 | '{' visibility_specification struct_declaration_list instance_variables_list error
  93. 73 instance_variables_list: visibility_specification struct_declaration_list
  94. 74 | visibility_specification struct_declaration_list instance_variables_list
  95. 75 visibility_specification: PRIVATE
  96. 76 | PROTECTED
  97. 77 | PUBLIC
  98. 78 interface_declaration_list: declaration
  99. 79 | method_declaration
  100. 80 | interface_declaration_list declaration
  101. 81 | interface_declaration_list method_declaration
  102. 82 objc_declaration_list: IDENTIFIER '*' IDENTIFIER ';'
  103. 83 | IDENTIFIER '*' IDENTIFIER ';' objc_declaration_list
  104. 84 | IDENTIFIER error IDENTIFIER ';'
  105. 85 | IDENTIFIER error IDENTIFIER error
  106. 86 | IDENTIFIER '*' IDENTIFIER error
  107. 87 | IDENTIFIER error IDENTIFIER ';' objc_declaration_list
  108. 88 | IDENTIFIER error IDENTIFIER error objc_declaration_list
  109. 89 | IDENTIFIER '*' IDENTIFIER error objc_declaration_list
  110. 90 method_declaration: class_method_declaration
  111. 91 | instance_method_declaration
  112. 92 class_method_declaration: '+' method_selector ';'
  113. 93 | '+' method_type method_selector ';'
  114. 94 | '+' method_type method_selector error
  115. 95 | '+' method_selector error
  116. 96 instance_method_declaration: '-' method_selector ';'
  117. 97 | '-' method_type method_selector ';'
  118. 98 | '-' method_type method_selector error
  119. 99 | '-' method_selector error
  120. 100 implementation_definition_list: function_definition
  121. 101 | declaration
  122. 102 | method_definition
  123. 103 | implementation_definition_list function_definition
  124. 104 | implementation_definition_list declaration
  125. 105 | implementation_definition_list method_definition
  126. 106 method_definition: class_method_definition
  127. 107 | instance_method_definition
  128. 108 class_method_definition: '+' method_selector compound_statement
  129. 109 | '+' method_type method_selector compound_statement
  130. 110 | '+' method_selector declaration_list compound_statement
  131. 111 | '+' method_type method_selector declaration_list compound_statement
  132. 112 instance_method_definition: '-' method_selector compound_statement
  133. 113 | '-' method_type method_selector compound_statement
  134. 114 | '-' method_selector declaration_list compound_statement
  135. 115 | '-' method_type method_selector declaration_list compound_statement
  136. 116 method_selector: unary_selector
  137. 117 | keyword_selector
  138. 118 | keyword_selector ',' ELLIPSIS
  139. 119 unary_selector: selector
  140. 120 keyword_selector: keyword_declarator
  141. 121 | keyword_selector keyword_declarator
  142. 122 keyword_declarator: selector ':' IDENTIFIER
  143. 123 | selector ':' method_type IDENTIFIER
  144. 124 selector: IDENTIFIER
  145. 125 method_type: '(' type_name ')'
  146. 126 | '(' IDENTIFIER '*' ')'
  147. 127 | '(' IDENTIFIER '*' error
  148. 128 | '(' IDENTIFIER error ')'
  149. 129 message_expression: '[' receiver message_selector ']'
  150. 130 | '[' receiver message_selector error
  151. 131 receiver: expression
  152. 132 | SUPER
  153. 133 message_selector: selector
  154. 134 | keyword_argument_list
  155. 135 keyword_argument_list: keyword_argument
  156. 136 | keyword_argument_list keyword_argument
  157. 137 keyword_argument: selector ':' expression
  158. 138 selector_expression: SELECTOR '(' selector_name ')'
  159. 139 | SELECTOR '(' selector_name error
  160. 140 | SELECTOR error selector_name ')'
  161. 141 selector_name: selector
  162. 142 | keyword_name_list
  163. 143 keyword_name_list: keyword_name
  164. 144 | keyword_name_list keyword_name
  165. 145 keyword_name: selector ':'
  166. 146 | ':'
  167. 147 protocol_expression: PROTOCOL '(' protocol_name ')'
  168. 148 | PROTOCOL '(' protocol_name error
  169. 149 | PROTOCOL error protocol_name ')'
  170. 150 encode_expression: ENCODE '(' type_name ')'
  171. 151 | ENCODE error type_name ')'
  172. 152 method_instantation_statement: IDENTIFIER '*' IDENTIFIER '=' expression ';'
  173. 153 | IDENTIFIER '*' IDENTIFIER error expression ';'
  174. 154 | IDENTIFIER '*' IDENTIFIER error expression error
  175. 155 primary_expression: IDENTIFIER
  176. 156 | INTEGER
  177. 157 | DECIMAL
  178. 158 | STRING
  179. 159 | CHARACTER
  180. 160 | '(' expression ')'
  181. 161 | SELF
  182. 162 | message_expression
  183. 163 | selector_expression
  184. 164 | protocol_expression
  185. 165 | encode_expression
  186. 166 postfix_expression: primary_expression
  187. 167 | postfix_expression '[' expression ']'
  188. 168 | postfix_expression '(' ')'
  189. 169 | postfix_expression '(' argument_expression_list ')'
  190. 170 | postfix_expression '.' IDENTIFIER
  191. 171 | postfix_expression PTR_OP IDENTIFIER
  192. 172 | postfix_expression INC_OP
  193. 173 | postfix_expression DEC_OP
  194. 174 | postfix_expression '[' expression error
  195. 175 | postfix_expression '(' error
  196. 176 | postfix_expression '(' argument_expression_list error
  197. 177 | postfix_expression '.' error
  198. 178 | postfix_expression PTR_OP error
  199. 179 argument_expression_list: assignment_expression
  200. 180 | argument_expression_list ',' assignment_expression
  201. 181 unary_expression: postfix_expression
  202. 182 | INC_OP unary_expression
  203. 183 | DEC_OP unary_expression
  204. 184 | unary_operator cast_expression
  205. 185 | SIZEOF unary_expression
  206. 186 | SIZEOF '(' type_name ')'
  207. 187 | SIZEOF error type_name ')'
  208. 188 unary_operator: '&'
  209. 189 | '*'
  210. 190 | '+'
  211. 191 | '-'
  212. 192 | '~'
  213. 193 | '!'
  214. 194 cast_expression: unary_expression
  215. 195 | '(' type_name ')' cast_expression
  216. 196 multiplicative_expression: cast_expression
  217. 197 | multiplicative_expression '*' cast_expression
  218. 198 | multiplicative_expression '/' cast_expression
  219. 199 | multiplicative_expression '%' cast_expression
  220. 200 additive_expression: multiplicative_expression
  221. 201 | additive_expression '+' multiplicative_expression
  222. 202 | additive_expression '-' multiplicative_expression
  223. 203 shift_expression: additive_expression
  224. 204 | shift_expression LEFT_OP additive_expression
  225. 205 | shift_expression RIGHT_OP additive_expression
  226. 206 relational_expression: shift_expression
  227. 207 | relational_expression '<' shift_expression
  228. 208 | relational_expression '>' shift_expression
  229. 209 | relational_expression LE_OP shift_expression
  230. 210 | relational_expression GE_OP shift_expression
  231. 211 equality_expression: relational_expression
  232. 212 | equality_expression EQ_OP relational_expression
  233. 213 | equality_expression NE_OP relational_expression
  234. 214 and_expression: equality_expression
  235. 215 | and_expression '&' equality_expression
  236. 216 exclusive_or_expression: and_expression
  237. 217 | exclusive_or_expression '^' and_expression
  238. 218 inclusive_or_expression: exclusive_or_expression
  239. 219 | inclusive_or_expression '|' exclusive_or_expression
  240. 220 logical_and_expression: inclusive_or_expression
  241. 221 | logical_and_expression AND_OP inclusive_or_expression
  242. 222 logical_or_expression: logical_and_expression
  243. 223 | logical_or_expression OR_OP logical_and_expression
  244. 224 conditional_expression: logical_or_expression
  245. 225 | logical_or_expression '?' expression ':' conditional_expression
  246. 226 | logical_or_expression '?' expression error conditional_expression
  247. 227 assignment_expression: conditional_expression
  248. 228 | unary_expression assignment_operator assignment_expression
  249. 229 assignment_operator: '='
  250. 230 | MUL_ASSIGN
  251. 231 | DIV_ASSIGN
  252. 232 | MOD_ASSIGN
  253. 233 | ADD_ASSIGN
  254. 234 | SUB_ASSIGN
  255. 235 | LEFT_ASSIGN
  256. 236 | RIGHT_ASSIGN
  257. 237 | AND_ASSIGN
  258. 238 | XOR_ASSIGN
  259. 239 | OR_ASSIGN
  260. 240 expression: assignment_expression
  261. 241 | expression ',' assignment_expression
  262. 242 constant_expression: conditional_expression
  263. 243 declaration: declaration_specifiers ';'
  264. 244 | declaration_specifiers init_declarator_list ';'
  265. 245 declaration_specifiers: type_qualifier
  266. 246 | type_specifier
  267. 247 | storage_class_specifier
  268. 248 | type_qualifier type_specifier
  269. 249 | type_specifier type_qualifier
  270. 250 | type_specifier storage_class_specifier
  271. 251 | storage_class_specifier type_specifier
  272. 252 | storage_class_specifier type_qualifier
  273. 253 | type_qualifier storage_class_specifier
  274. 254 | type_qualifier type_specifier storage_class_specifier
  275. 255 | type_qualifier storage_class_specifier type_specifier
  276. 256 | storage_class_specifier type_specifier type_qualifier
  277. 257 | storage_class_specifier type_qualifier type_specifier
  278. 258 | type_specifier type_qualifier storage_class_specifier
  279. 259 | type_specifier storage_class_specifier type_qualifier
  280. 260 init_declarator_list: init_declarator
  281. 261 | init_declarator_list ',' init_declarator
  282. 262 | init_declarator_list error init_declarator
  283. 263 init_declarator: declarator
  284. 264 | declarator '=' initializer
  285. 265 storage_class_specifier: TYPEDEF
  286. 266 | EXTERN
  287. 267 | STATIC
  288. 268 | AUTO
  289. 269 | REGISTER
  290. 270 type_specifier: VOID
  291. 271 | CHAR
  292. 272 | SHORT
  293. 273 | INT
  294. 274 | LONG
  295. 275 | FLOAT
  296. 276 | DOUBLE
  297. 277 | SIGNED
  298. 278 | UNSIGNED
  299. 279 | struct_or_union_specifier
  300. 280 | enum_specifier
  301. 281 | ID protocol_reference_list
  302. 282 | ID
  303. 283 | BOOL
  304. 284 struct_or_union_specifier: struct_or_union IDENTIFIER '{' struct_declaration_list '}'
  305. 285 | struct_or_union '{' struct_declaration_list '}'
  306. 286 | struct_or_union IDENTIFIER '{' DEFS '(' IDENTIFIER ')' '}'
  307. 287 | struct_or_union '{' DEFS '(' IDENTIFIER ')' '}'
  308. 288 | struct_or_union IDENTIFIER
  309. 289 | struct_or_union error
  310. 290 | struct_or_union IDENTIFIER '{' struct_declaration_list error
  311. 291 | struct_or_union error '{' struct_declaration_list '}'
  312. 292 | struct_or_union '{' struct_declaration_list error
  313. 293 | struct_or_union IDENTIFIER '{' DEFS '(' IDENTIFIER ')' error
  314. 294 | struct_or_union IDENTIFIER '{' DEFS '(' IDENTIFIER error '}'
  315. 295 | struct_or_union IDENTIFIER '{' DEFS error IDENTIFIER ')' '}'
  316. 296 | struct_or_union IDENTIFIER '{' error '(' IDENTIFIER ')' '}'
  317. 297 | struct_or_union error '{' DEFS '(' IDENTIFIER ')' '}'
  318. 298 | struct_or_union IDENTIFIER '{' DEFS '(' IDENTIFIER error error
  319. 299 | struct_or_union IDENTIFIER '{' DEFS error IDENTIFIER ')' error
  320. 300 | struct_or_union IDENTIFIER '{' error '(' IDENTIFIER ')' error
  321. 301 | struct_or_union error '{' DEFS '(' IDENTIFIER ')' error
  322. 302 | struct_or_union IDENTIFIER '{' DEFS error IDENTIFIER error '}'
  323. 303 | struct_or_union IDENTIFIER '{' error '(' IDENTIFIER error '}'
  324. 304 | struct_or_union error '{' DEFS '(' IDENTIFIER error '}'
  325. 305 | struct_or_union IDENTIFIER '{' error error IDENTIFIER ')' '}'
  326. 306 | struct_or_union error '{' DEFS error IDENTIFIER ')' '}'
  327. 307 | struct_or_union error '{' error '(' IDENTIFIER ')' '}'
  328. 308 | struct_or_union IDENTIFIER '{' DEFS error IDENTIFIER error error
  329. 309 | struct_or_union IDENTIFIER '{' error '(' IDENTIFIER error error
  330. 310 | struct_or_union error '{' DEFS '(' IDENTIFIER error error
  331. 311 | struct_or_union IDENTIFIER '{' error error IDENTIFIER ')' error
  332. 312 | struct_or_union error '{' DEFS error IDENTIFIER ')' error
  333. 313 | struct_or_union error '{' error '(' IDENTIFIER ')' error
  334. 314 | struct_or_union IDENTIFIER '{' error error IDENTIFIER error '}'
  335. 315 | struct_or_union error '{' DEFS error IDENTIFIER error '}'
  336. 316 | struct_or_union error '{' error '(' IDENTIFIER error '}'
  337. 317 | struct_or_union error '{' error error IDENTIFIER ')' '}'
  338. 318 | struct_or_union IDENTIFIER '{' error error IDENTIFIER error error
  339. 319 | struct_or_union error '{' DEFS error IDENTIFIER error error
  340. 320 | struct_or_union error '{' error '(' IDENTIFIER error error
  341. 321 | struct_or_union error '{' error error IDENTIFIER ')' error
  342. 322 | struct_or_union error '{' error error IDENTIFIER error '}'
  343. 323 | struct_or_union error '{' error error IDENTIFIER error error
  344. 324 | struct_or_union '{' DEFS '(' IDENTIFIER ')' error
  345. 325 | struct_or_union '{' DEFS '(' IDENTIFIER error '}'
  346. 326 | struct_or_union '{' DEFS error IDENTIFIER ')' '}'
  347. 327 | struct_or_union '{' error '(' IDENTIFIER ')' '}'
  348. 328 | struct_or_union error DEFS '(' IDENTIFIER ')' '}'
  349. 329 | struct_or_union '{' DEFS '(' IDENTIFIER error error
  350. 330 | struct_or_union '{' DEFS error IDENTIFIER ')' error
  351. 331 | struct_or_union '{' error '(' IDENTIFIER ')' error
  352. 332 | struct_or_union error DEFS '(' IDENTIFIER ')' error
  353. 333 | struct_or_union '{' DEFS error IDENTIFIER error '}'
  354. 334 | struct_or_union '{' error '(' IDENTIFIER error '}'
  355. 335 | struct_or_union error DEFS '(' IDENTIFIER error '}'
  356. 336 | struct_or_union '{' error error IDENTIFIER ')' '}'
  357. 337 | struct_or_union error DEFS error IDENTIFIER ')' '}'
  358. 338 | struct_or_union '{' DEFS error IDENTIFIER error error
  359. 339 | struct_or_union '{' error '(' IDENTIFIER error error
  360. 340 | struct_or_union error DEFS '(' IDENTIFIER error error
  361. 341 | struct_or_union '{' error error IDENTIFIER ')' error
  362. 342 | struct_or_union error DEFS error IDENTIFIER ')' error
  363. 343 | struct_or_union '{' error error IDENTIFIER error '}'
  364. 344 | struct_or_union error DEFS error IDENTIFIER error '}'
  365. 345 | struct_or_union error DEFS error IDENTIFIER error error
  366. 346 | struct_or_union '{' error error IDENTIFIER error error
  367. 347 struct_or_union: STRUCT
  368. 348 | UNION
  369. 349 struct_declaration_list: struct_declaration
  370. 350 | struct_declaration_list struct_declaration
  371. 351 struct_declaration: specifier_qualifier_list struct_declarator_list ';'
  372. 352 | specifier_qualifier_list struct_declarator_list error
  373. 353 specifier_qualifier_list: type_specifier
  374. 354 | type_qualifier
  375. 355 | type_specifier type_qualifier
  376. 356 | type_qualifier type_specifier
  377. 357 struct_declarator_list: struct_declarator
  378. 358 | struct_declarator_list ',' struct_declarator
  379. 359 | struct_declarator_list error struct_declarator
  380. 360 struct_declarator: declarator
  381. 361 | ':' constant_expression
  382. 362 | declarator ':' constant_expression
  383. 363 enum_specifier: ENUM '{' enumerator_list '}'
  384. 364 | ENUM IDENTIFIER '{' enumerator_list '}'
  385. 365 | ENUM IDENTIFIER
  386. 366 | ENUM error
  387. 367 | ENUM '{' enumerator_list error
  388. 368 | ENUM IDENTIFIER '{' enumerator_list error
  389. 369 | ENUM error '{' enumerator_list '}'
  390. 370 | ENUM error '{' enumerator_list error
  391. 371 enumerator_list: enumerator
  392. 372 | enumerator_list ',' enumerator
  393. 373 enumerator: IDENTIFIER
  394. 374 | IDENTIFIER '=' constant_expression
  395. 375 | error
  396. 376 type_qualifier: CONST
  397. 377 | VOLATILE
  398. 378 | protocol_qualifier
  399. 379 protocol_qualifier: IN
  400. 380 | OUT
  401. 381 | INOUT
  402. 382 | BYCOPY
  403. 383 | BYREF
  404. 384 | ONEWAY
  405. 385 declarator: pointer direct_declarator
  406. 386 | direct_declarator
  407. 387 direct_declarator: IDENTIFIER
  408. 388 | '(' declarator ')'
  409. 389 | direct_declarator '[' constant_expression ']'
  410. 390 | direct_declarator '[' ']'
  411. 391 | direct_declarator '(' parameter_list ')'
  412. 392 | direct_declarator '(' identifier_list ')'
  413. 393 | direct_declarator '(' ')'
  414. 394 | direct_declarator '[' constant_expression error
  415. 395 | direct_declarator '[' error
  416. 396 | direct_declarator '(' identifier_list error
  417. 397 | direct_declarator '(' error
  418. 398 pointer: '*'
  419. 399 | '*' type_qualifier_list
  420. 400 | '*' pointer
  421. 401 | '*' type_qualifier_list pointer
  422. 402 type_qualifier_list: type_qualifier
  423. 403 | type_qualifier_list type_qualifier
  424. 404 parameter_list: parameter_declaration
  425. 405 | parameter_list ',' parameter_declaration
  426. 406 parameter_declaration: declaration_specifiers declarator
  427. 407 | declaration_specifiers abstract_declarator
  428. 408 | declaration_specifiers
  429. 409 identifier_list: IDENTIFIER
  430. 410 | identifier_list ',' IDENTIFIER
  431. 411 | identifier_list error IDENTIFIER
  432. 412 type_name: specifier_qualifier_list
  433. 413 | specifier_qualifier_list abstract_declarator
  434. 414 abstract_declarator: pointer
  435. 415 | direct_abstract_declarator
  436. 416 | pointer direct_abstract_declarator
  437. 417 direct_abstract_declarator: '(' abstract_declarator ')'
  438. 418 | '[' ']'
  439. 419 | '[' constant_expression ']'
  440. 420 | direct_abstract_declarator '[' ']'
  441. 421 | direct_abstract_declarator '[' constant_expression ']'
  442. 422 | '(' ')'
  443. 423 | '(' parameter_list ')'
  444. 424 | direct_abstract_declarator '(' ')'
  445. 425 | direct_abstract_declarator '(' parameter_list ')'
  446. 426 | '[' error
  447. 427 | error ']'
  448. 428 | error constant_expression ']'
  449. 429 | '[' constant_expression error
  450. 430 | error constant_expression error
  451. 431 | direct_abstract_declarator error ']'
  452. 432 | direct_abstract_declarator '[' error
  453. 433 | direct_abstract_declarator error constant_expression error
  454. 434 | direct_abstract_declarator '[' constant_expression error
  455. 435 | direct_abstract_declarator error constant_expression ']'
  456. 436 | error parameter_list ')'
  457. 437 | direct_abstract_declarator error error
  458. 438 | direct_abstract_declarator error ')'
  459. 439 | direct_abstract_declarator '(' error
  460. 440 | direct_abstract_declarator error parameter_list ')'
  461. 441 initializer: assignment_expression
  462. 442 | '{' initializer_list '}'
  463. 443 | '{' initializer_list ',' '}'
  464. 444 | '{' initializer_list error
  465. 445 | '{' initializer_list ',' error
  466. 446 initializer_list: initializer
  467. 447 | initializer_list ',' initializer
  468. 448 | initializer_list error initializer
  469. 449 statement: method_instantation_statement
  470. 450 | labeled_statement
  471. 451 | compound_statement
  472. 452 | expression_statement
  473. 453 | selection_statement
  474. 454 | iteration_statement
  475. 455 | jump_statement
  476. 456 | print_statement_int
  477. 457 | print_statement_float
  478. 458 | error ';'
  479. 459 print_statement_int: PRINTI '(' IDENTIFIER ')' ';'
  480. 460 print_statement_float: PRINTF '(' IDENTIFIER ')' ';'
  481. 461 labeled_statement: IDENTIFIER ':' statement
  482. 462 | CASE constant_expression ':' statement
  483. 463 | DEFAULT ':' statement
  484. 464 | CASE constant_expression error statement
  485. 465 | DEFAULT error statement
  486. 466 compound_statement: '{' '}'
  487. 467 | '{' compound_statement_list '}'
  488. 468 | '{' compound_declaration_list '}'
  489. 469 declaration_list: declaration
  490. 470 | declaration declaration_list
  491. 471 statement_list: statement
  492. 472 | statement statement_list
  493. 473 compound_statement_list: declaration_list
  494. 474 | declaration_list compound_declaration_list
  495. 475 compound_declaration_list: statement_list
  496. 476 | statement_list compound_statement_list
  497. 477 expression_statement: ';'
  498. 478 | expression ';'
  499. 479 | expression error
  500. 480 selection_statement: IF '(' expression ')' statement
  501. 481 | IF '(' expression ')' statement ELSE statement
  502. 482 | SWITCH '(' expression ')' statement
  503. 483 | IF error expression ')' statement
  504. 484 | IF error expression error statement
  505. 485 | IF '(' expression error statement
  506. 486 | IF ')' expression error statement ELSE statement
  507. 487 | SWITCH error expression ')' statement
  508. 488 | SWITCH error expression error statement
  509. 489 | SWITCH '(' expression error statement
  510. 490 iteration_statement: WHILE '(' expression ')' statement
  511. 491 | DO statement WHILE '(' expression ')' ';'
  512. 492 | FOR '(' expression_statement expression_statement ')' statement
  513. 493 | FOR '(' expression_statement expression_statement expression ')' statement
  514. 494 | WHILE error expression ')' statement
  515. 495 | WHILE error expression error statement
  516. 496 | WHILE '(' expression error statement
  517. 497 | DO statement WHILE error expression ')' ';'
  518. 498 | DO statement WHILE error expression error ';'
  519. 499 | DO statement WHILE '(' expression error ';'
  520. 500 | DO statement WHILE error expression ')' error
  521. 501 | DO statement WHILE '(' expression ')' error
  522. 502 | DO statement error '(' expression ')' ';'
  523. 503 | DO statement error '(' expression ')' error
  524. 504 | FOR error expression_statement expression_statement ')' statement
  525. 505 | FOR '(' expression_statement expression_statement error statement
  526. 506 | FOR error expression_statement expression_statement error statement
  527. 507 | FOR error expression_statement expression_statement expression ')' statement
  528. 508 | FOR '(' expression_statement expression_statement expression error statement
  529. 509 | FOR error expression_statement expression_statement expression error statement
  530. 510 jump_statement: jump_statement_intermediate ';'
  531. 511 | jump_statement_intermediate error
  532. 512 jump_statement_intermediate: GOTO IDENTIFIER
  533. 513 | CONTINUE
  534. 514 | BREAK
  535. 515 | RETURN
  536. 516 | RETURN expression
  537. 517 external_declaration: function_definition
  538. 518 | declaration
  539. 519 | class_interface
  540. 520 | class_implementation
  541. 521 | category_interface
  542. 522 | category_implementation
  543. 523 | protocol_declaration
  544. 524 | class_declaration_list
  545. 525 function_definition: declaration_specifiers declarator declaration_list compound_statement
  546. 526 | declaration_specifiers declarator compound_statement
  547. 527 | declarator declaration_list compound_statement
  548. 528 | declarator compound_statement
  549. 529 translation_unit: external_declaration
  550. 530 | translation_unit external_declaration
  551. 531 start_prog: translation_unit
  552. Terminals, with rules where they appear
  553. $end (0) 0
  554. '!' (33) 193
  555. '%' (37) 199
  556. '&' (38) 188 215
  557. '(' (40) 34 35 36 37 40 41 42 43 44 45 46 47 125 126 127 128 138 139
  558. 147 148 150 160 168 169 175 176 186 195 286 287 293 294 296 297
  559. 298 300 301 303 304 307 309 310 313 316 320 324 325 327 328 329
  560. 331 332 334 335 339 340 388 391 392 393 396 397 417 422 423 424
  561. 425 439 459 460 480 481 482 485 489 490 491 492 493 496 499 501
  562. 502 503 505 508
  563. ')' (41) 34 35 36 37 38 39 41 42 43 44 45 47 125 126 128 138 140 147
  564. 149 150 151 160 168 169 186 187 195 286 287 293 295 296 297 299
  565. 300 301 305 306 307 311 312 313 317 321 324 326 327 328 330 331
  566. 332 336 337 341 342 388 391 392 393 417 422 423 424 425 436 438
  567. 440 459 460 480 481 482 483 486 487 490 491 492 493 494 497 500
  568. 501 502 503 504 507
  569. '*' (42) 82 83 86 89 126 127 152 153 154 189 197 398 399 400 401
  570. '+' (43) 92 93 94 95 108 109 110 111 190 201
  571. ',' (44) 56 61 118 180 241 261 358 372 405 410 443 445 447
  572. '-' (45) 96 97 98 99 112 113 114 115 191 202
  573. '.' (46) 170 177
  574. '/' (47) 198
  575. ':' (58) 2 4 6 8 10 12 14 16 18 19 21 24 26 28 30 33 122 123 137 145
  576. 146 225 361 362 461 462 463
  577. ';' (59) 53 82 83 84 87 92 93 96 97 152 153 243 244 351 458 459 460
  578. 477 478 491 497 498 499 502 510
  579. '<' (60) 58 59 207
  580. '=' (61) 152 229 264 374
  581. '>' (62) 58 208
  582. '?' (63) 225 226
  583. '[' (91) 129 130 167 174 389 390 394 395 418 419 420 421 426 429 432
  584. 434
  585. ']' (93) 129 167 389 390 418 419 420 421 427 428 431 435
  586. '^' (94) 217
  587. '{' (123) 63 64 65 66 67 68 69 70 71 72 284 285 286 287 290 291 292
  588. 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308
  589. 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324
  590. 325 326 327 329 330 331 333 334 336 338 339 341 343 346 363 364
  591. 367 368 369 370 442 443 444 445 466 467 468
  592. '|' (124) 219
  593. '}' (125) 63 64 65 66 67 68 69 284 285 286 287 291 294 295 296 297
  594. 302 303 304 305 306 307 314 315 316 317 322 325 326 327 328 333
  595. 334 335 336 337 343 344 363 364 369 442 443 466 467 468
  596. '~' (126) 192
  597. error (256) 17 18 19 20 21 22 31 32 33 38 39 40 41 42 45 46 47 52 54
  598. 57 59 69 70 71 72 84 85 86 87 88 89 94 95 98 99 127 128 130 139
  599. 140 148 149 151 153 154 174 175 176 177 178 187 226 262 289 290
  600. 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306
  601. 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322
  602. 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338
  603. 339 340 341 342 343 344 345 346 352 359 366 367 368 369 370 375
  604. 394 395 396 397 411 426 427 428 429 430 431 432 433 434 435 436
  605. 437 438 439 440 444 445 448 458 464 465 479 483 484 485 486 487
  606. 488 489 494 495 496 497 498 499 500 501 502 503 504 505 506 507
  607. 508 509 511
  608. IDENTIFIER (258) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 21 22
  609. 23 24 25 26 27 28 29 30 32 33 34 35 36 37 38 39 40 41 42 43 44
  610. 45 46 47 55 56 62 82 83 84 85 86 87 88 89 122 123 124 126 127 128
  611. 152 153 154 155 170 171 284 286 287 288 290 293 294 295 296 297
  612. 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313
  613. 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
  614. 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345
  615. 346 364 365 368 373 374 387 409 410 411 459 460 461 512
  616. STRING (259) 158
  617. CHARACTER (260) 159
  618. INTEGER (261) 156
  619. DECIMAL (262) 157
  620. SIZEOF (263) 185 186 187
  621. PTR_OP (264) 171 178
  622. INC_OP (265) 172 182
  623. DEC_OP (266) 173 183
  624. LEFT_OP (267) 204
  625. RIGHT_OP (268) 205
  626. LE_OP (269) 209
  627. GE_OP (270) 210
  628. EQ_OP (271) 212
  629. NE_OP (272) 213
  630. PRINTI (273) 459
  631. PRINTF (274) 460
  632. AND_OP (275) 221
  633. OR_OP (276) 223
  634. MUL_ASSIGN (277) 230
  635. DIV_ASSIGN (278) 231
  636. MOD_ASSIGN (279) 232
  637. ADD_ASSIGN (280) 233
  638. SUB_ASSIGN (281) 234
  639. LEFT_ASSIGN (282) 235
  640. RIGHT_ASSIGN (283) 236
  641. AND_ASSIGN (284) 237
  642. XOR_ASSIGN (285) 238
  643. OR_ASSIGN (286) 239
  644. TYPE_NAME (287)
  645. TYPEDEF (288) 265
  646. EXTERN (289) 266
  647. STATIC (290) 267
  648. AUTO (291) 268
  649. REGISTER (292) 269
  650. CHAR (293) 271
  651. SHORT (294) 272
  652. INT (295) 273
  653. LONG (296) 274
  654. SIGNED (297) 277
  655. UNSIGNED (298) 278
  656. FLOAT (299) 275
  657. DOUBLE (300) 276
  658. CONST (301) 376
  659. VOLATILE (302) 377
  660. VOID (303) 270
  661. STRUCT (304) 347
  662. UNION (305) 348
  663. ENUM (306) 363 364 365 366 367 368 369 370
  664. ELLIPSIS (307) 118
  665. CASE (308) 462 464
  666. DEFAULT (309) 463 465
  667. IF (310) 480 481 483 484 485 486
  668. ELSE (311) 481 486
  669. SWITCH (312) 482 487 488 489
  670. WHILE (313) 490 491 494 495 496 497 498 499 500 501
  671. DO (314) 491 497 498 499 500 501 502 503
  672. FOR (315) 492 493 504 505 506 507 508 509
  673. GOTO (316) 512
  674. CONTINUE (317) 513
  675. BREAK (318) 514
  676. RETURN (319) 515 516
  677. INTERFACE (320) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
  678. 21 22 34 35 36 37 38 39 40 41 42
  679. IMPLEMENTATION (321) 23 24 25 26 27 28 29 30 31 32 33 43 44 45 46 47
  680. END (322) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
  681. 23 24 25 26 27 28 29 30 34 35 36 37 38 39 43 44 45 46 48 49 50
  682. 51 52
  683. PROTOCOL (323) 48 49 50 51 52 147 148 149
  684. CLASS (324) 53 54
  685. PRIVATE (325) 75
  686. PUBLIC (326) 77
  687. PROTECTED (327) 76
  688. SELECTOR (328) 138 139 140
  689. ENCODE (329) 150 151
  690. SYNCHRONIZED (330)
  691. CLASSNAME (331)
  692. SUPER (332) 132
  693. SELF (333) 161
  694. ID (334) 281 282
  695. DEFS (335) 286 287 293 294 295 297 298 299 301 302 304 306 308 310
  696. 312 315 319 324 325 326 328 329 330 332 333 335 337 338 340 342
  697. 344 345
  698. IN (336) 379
  699. OUT (337) 380
  700. INOUT (338) 381
  701. BYCOPY (339) 382
  702. BYREF (340) 383
  703. ONEWAY (341) 384
  704. BOOL (342) 283
  705. TRY (343)
  706. CATCH (344)
  707. FINALLY (345)
  708. THROW (346)
  709. ALLOC (347)
  710. RETAIN (348)
  711. RELEASE (349)
  712. AUTORELEASE (350)
  713. INCLUDE (351)
  714. IMPORT (352)
  715. IFX (353)
  716. Nonterminals, with rules where they appear
  717. $accept (123)
  718. on left: 0
  719. class_interface (124)
  720. on left: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
  721. 22, on right: 519
  722. class_implementation (125)
  723. on left: 23 24 25 26 27 28 29 30 31 32 33, on right: 520
  724. category_interface (126)
  725. on left: 34 35 36 37 38 39 40 41 42, on right: 521
  726. category_implementation (127)
  727. on left: 43 44 45 46 47, on right: 522
  728. protocol_declaration (128)
  729. on left: 48 49 50 51 52, on right: 523
  730. class_declaration_list (129)
  731. on left: 53 54, on right: 524
  732. class_list (130)
  733. on left: 55 56 57, on right: 53 54 56 57
  734. protocol_reference_list (131)
  735. on left: 58 59, on right: 3 4 7 8 11 12 15 16 19 35 37 39 42 49
  736. 51 52 281
  737. protocol_list (132)
  738. on left: 60 61, on right: 58 59 61
  739. protocol_name (133)
  740. on left: 62, on right: 48 49 50 51 60 61 147 148 149
  741. instance_variables (134)
  742. on left: 63 64 65 66 67 68 69 70 71 72, on right: 5 6 7 8 13 14
  743. 15 16 20 21 22 25 26 29 30
  744. instance_variables_list (135)
  745. on left: 73 74, on right: 64 67 68 69 71 72 74
  746. visibility_specification (136)
  747. on left: 75 76 77, on right: 66 68 70 72 73 74
  748. interface_declaration_list (137)
  749. on left: 78 79 80 81, on right: 9 10 11 12 13 14 15 16 22 36 37
  750. 42 50 51 52 80 81
  751. objc_declaration_list (138)
  752. on left: 82 83 84 85 86 87 88 89, on right: 63 64 83 87 88 89
  753. method_declaration (139)
  754. on left: 90 91, on right: 79 81
  755. class_method_declaration (140)
  756. on left: 92 93 94 95, on right: 90
  757. instance_method_declaration (141)
  758. on left: 96 97 98 99, on right: 91
  759. implementation_definition_list (142)
  760. on left: 100 101 102 103 104 105, on right: 27 28 29 30 44 45 46
  761. 103 104 105
  762. method_definition (143)
  763. on left: 106 107, on right: 102 105
  764. class_method_definition (144)
  765. on left: 108 109 110 111, on right: 106
  766. instance_method_definition (145)
  767. on left: 112 113 114 115, on right: 107
  768. method_selector (146)
  769. on left: 116 117 118, on right: 92 93 94 95 96 97 98 99 108 109
  770. 110 111 112 113 114 115
  771. unary_selector (147)
  772. on left: 119, on right: 116
  773. keyword_selector (148)
  774. on left: 120 121, on right: 117 118 121
  775. keyword_declarator (149)
  776. on left: 122 123, on right: 120 121
  777. selector (150)
  778. on left: 124, on right: 119 122 123 133 137 141 145
  779. method_type (151)
  780. on left: 125 126 127 128, on right: 93 94 97 98 109 111 113 115
  781. 123
  782. message_expression (152)
  783. on left: 129 130, on right: 162
  784. receiver (153)
  785. on left: 131 132, on right: 129 130
  786. message_selector (154)
  787. on left: 133 134, on right: 129 130
  788. keyword_argument_list (155)
  789. on left: 135 136, on right: 134 136
  790. keyword_argument (156)
  791. on left: 137, on right: 135 136
  792. selector_expression (157)
  793. on left: 138 139 140, on right: 163
  794. selector_name (158)
  795. on left: 141 142, on right: 138 139 140
  796. keyword_name_list (159)
  797. on left: 143 144, on right: 142 144
  798. keyword_name (160)
  799. on left: 145 146, on right: 143 144
  800. protocol_expression (161)
  801. on left: 147 148 149, on right: 164
  802. encode_expression (162)
  803. on left: 150 151, on right: 165
  804. method_instantation_statement (163)
  805. on left: 152 153 154, on right: 449
  806. primary_expression (164)
  807. on left: 155 156 157 158 159 160 161 162 163 164 165,
  808. on right: 166
  809. postfix_expression (165)
  810. on left: 166 167 168 169 170 171 172 173 174 175 176 177 178,
  811. on right: 167 168 169 170 171 172 173 174 175 176 177 178 181
  812. argument_expression_list (166)
  813. on left: 179 180, on right: 169 176 180
  814. unary_expression (167)
  815. on left: 181 182 183 184 185 186 187, on right: 182 183 185 194
  816. 228
  817. unary_operator (168)
  818. on left: 188 189 190 191 192 193, on right: 184
  819. cast_expression (169)
  820. on left: 194 195, on right: 184 195 196 197 198 199
  821. multiplicative_expression (170)
  822. on left: 196 197 198 199, on right: 197 198 199 200 201 202
  823. additive_expression (171)
  824. on left: 200 201 202, on right: 201 202 203 204 205
  825. shift_expression (172)
  826. on left: 203 204 205, on right: 204 205 206 207 208 209 210
  827. relational_expression (173)
  828. on left: 206 207 208 209 210, on right: 207 208 209 210 211 212
  829. 213
  830. equality_expression (174)
  831. on left: 211 212 213, on right: 212 213 214 215
  832. and_expression (175)
  833. on left: 214 215, on right: 215 216 217
  834. exclusive_or_expression (176)
  835. on left: 216 217, on right: 217 218 219
  836. inclusive_or_expression (177)
  837. on left: 218 219, on right: 219 220 221
  838. logical_and_expression (178)
  839. on left: 220 221, on right: 221 222 223
  840. logical_or_expression (179)
  841. on left: 222 223, on right: 223 224 225 226
  842. conditional_expression (180)
  843. on left: 224 225 226, on right: 225 226 227 242
  844. assignment_expression (181)
  845. on left: 227 228, on right: 179 180 228 240 241 441
  846. assignment_operator (182)
  847. on left: 229 230 231 232 233 234 235 236 237 238 239,
  848. on right: 228
  849. expression (183)
  850. on left: 240 241, on right: 131 137 152 153 154 160 167 174 225
  851. 226 241 478 479 480 481 482 483 484 485 486 487 488 489 490 491
  852. 493 494 495 496 497 498 499 500 501 502 503 507 508 509 516
  853. constant_expression (184)
  854. on left: 242, on right: 361 362 374 389 394 419 421 428 429 430
  855. 433 434 435 462 464
  856. declaration (185)
  857. on left: 243 244, on right: 78 80 101 104 469 470 518
  858. declaration_specifiers (186)
  859. on left: 245 246 247 248 249 250 251 252 253 254 255 256 257 258
  860. 259, on right: 243 244 406 407 408 525 526
  861. init_declarator_list (187)
  862. on left: 260 261 262, on right: 244 261 262
  863. init_declarator (188)
  864. on left: 263 264, on right: 260 261 262
  865. storage_class_specifier (189)
  866. on left: 265 266 267 268 269, on right: 247 250 251 252 253 254
  867. 255 256 257 258 259
  868. type_specifier (190)
  869. on left: 270 271 272 273 274 275 276 277 278 279 280 281 282 283
  870. , on right: 246 248 249 250 251 254 255 256 257 258 259 353 355
  871. 356
  872. struct_or_union_specifier (191)
  873. on left: 284 285 286 287 288 289 290 291 292 293 294 295 296 297
  874. 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313
  875. 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
  876. 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345
  877. 346, on right: 279
  878. struct_or_union (192)
  879. on left: 347 348, on right: 284 285 286 287 288 289 290 291 292
  880. 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308
  881. 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324
  882. 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
  883. 341 342 343 344 345 346
  884. struct_declaration_list (193)
  885. on left: 349 350, on right: 65 66 67 68 69 70 71 72 73 74 284 285
  886. 290 291 292 350
  887. struct_declaration (194)
  888. on left: 351 352, on right: 349 350
  889. specifier_qualifier_list (195)
  890. on left: 353 354 355 356, on right: 351 352 412 413
  891. struct_declarator_list (196)
  892. on left: 357 358 359, on right: 351 352 358 359
  893. struct_declarator (197)
  894. on left: 360 361 362, on right: 357 358 359
  895. enum_specifier (198)
  896. on left: 363 364 365 366 367 368 369 370, on right: 280
  897. enumerator_list (199)
  898. on left: 371 372, on right: 363 364 367 368 369 370 372
  899. enumerator (200)
  900. on left: 373 374 375, on right: 371 372
  901. type_qualifier (201)
  902. on left: 376 377 378, on right: 245 248 249 252 253 254 255 256
  903. 257 258 259 354 355 356 402 403
  904. protocol_qualifier (202)
  905. on left: 379 380 381 382 383 384, on right: 378
  906. declarator (203)
  907. on left: 385 386, on right: 263 264 360 362 388 406 525 526 527
  908. 528
  909. direct_declarator (204)
  910. on left: 387 388 389 390 391 392 393 394 395 396 397,
  911. on right: 385 386 389 390 391 392 393 394 395 396 397
  912. pointer (205)
  913. on left: 398 399 400 401, on right: 385 400 401 414 416
  914. type_qualifier_list (206)
  915. on left: 402 403, on right: 399 401 403
  916. parameter_list (207)
  917. on left: 404 405, on right: 391 405 423 425 436 440
  918. parameter_declaration (208)
  919. on left: 406 407 408, on right: 404 405
  920. identifier_list (209)
  921. on left: 409 410 411, on right: 392 396 410 411
  922. type_name (210)
  923. on left: 412 413, on right: 125 150 151 186 187 195
  924. abstract_declarator (211)
  925. on left: 414 415 416, on right: 407 413 417
  926. direct_abstract_declarator (212)
  927. on left: 417 418 419 420 421 422 423 424 425 426 427 428 429 430
  928. 431 432 433 434 435 436 437 438 439 440, on right: 415 416 420
  929. 421 424 425 431 432 433 434 435 437 438 439 440
  930. initializer (213)
  931. on left: 441 442 443 444 445, on right: 264 446 447 448
  932. initializer_list (214)
  933. on left: 446 447 448, on right: 442 443 444 445 447 448
  934. statement (215)
  935. on left: 449 450 451 452 453 454 455 456 457 458,
  936. on right: 461 462 463 464 465 471 472 480 481 482 483 484 485 486
  937. 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502
  938. 503 504 505 506 507 508 509
  939. print_statement_int (216)
  940. on left: 459, on right: 456
  941. print_statement_float (217)
  942. on left: 460, on right: 457
  943. labeled_statement (218)
  944. on left: 461 462 463 464 465, on right: 450
  945. compound_statement (219)
  946. on left: 466 467 468, on right: 108 109 110 111 112 113 114 115
  947. 451 525 526 527 528
  948. declaration_list (220)
  949. on left: 469 470, on right: 110 111 114 115 470 473 474 525 527
  950. statement_list (221)
  951. on left: 471 472, on right: 472 475 476
  952. compound_statement_list (222)
  953. on left: 473 474, on right: 467 476
  954. compound_declaration_list (223)
  955. on left: 475 476, on right: 468 474
  956. expression_statement (224)
  957. on left: 477 478 479, on right: 452 492 493 504 505 506 507 508
  958. 509
  959. selection_statement (225)
  960. on left: 480 481 482 483 484 485 486 487 488 489,
  961. on right: 453
  962. iteration_statement (226)
  963. on left: 490 491 492 493 494 495 496 497 498 499 500 501 502 503
  964. 504 505 506 507 508 509, on right: 454
  965. jump_statement (227)
  966. on left: 510 511, on right: 455
  967. jump_statement_intermediate (228)
  968. on left: 512 513 514 515 516, on right: 510 511
  969. external_declaration (229)
  970. on left: 517 518 519 520 521 522 523 524, on right: 529 530
  971. function_definition (230)
  972. on left: 525 526 527 528, on right: 100 103 517
  973. translation_unit (231)
  974. on left: 529 530, on right: 530 531
  975. start_prog (232)
  976. on left: 531, on right: 0
  977. state 0
  978. 0 $accept: . start_prog $end
  979. IDENTIFIER shift, and go to state 1
  980. TYPEDEF shift, and go to state 2
  981. EXTERN shift, and go to state 3
  982. STATIC shift, and go to state 4
  983. AUTO shift, and go to state 5
  984. REGISTER shift, and go to state 6
  985. CHAR shift, and go to state 7
  986. SHORT shift, and go to state 8
  987. INT shift, and go to state 9
  988. LONG shift, and go to state 10
  989. SIGNED shift, and go to state 11
  990. UNSIGNED shift, and go to state 12
  991. FLOAT shift, and go to state 13
  992. DOUBLE shift, and go to state 14
  993. CONST shift, and go to sta

Large files files are truncated, but you can click here to view the full file