PageRenderTime 54ms CodeModel.GetById 10ms app.highlight 9ms RepoModel.GetById 1ms app.codeStats 3ms

/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

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

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