diff options
Diffstat (limited to 'src/uscxml/plugins/datamodel/c89/parser/c89.output')
-rw-r--r-- | src/uscxml/plugins/datamodel/c89/parser/c89.output | 6137 |
1 files changed, 6137 insertions, 0 deletions
diff --git a/src/uscxml/plugins/datamodel/c89/parser/c89.output b/src/uscxml/plugins/datamodel/c89/parser/c89.output new file mode 100644 index 0000000..a83648b --- /dev/null +++ b/src/uscxml/plugins/datamodel/c89/parser/c89.output @@ -0,0 +1,6137 @@ +State 333 conflicts: 1 shift/reduce + + +Grammar + + 0 $accept: translation_unit $end + + 1 primary_expression: IDENTIFIER + 2 | CONSTANT + 3 | STRING_LITERAL + 4 | '(' expression ')' + + 5 postfix_expression: primary_expression + 6 | postfix_expression '[' expression ']' + 7 | postfix_expression '(' ')' + 8 | postfix_expression '(' argument_expression_list ')' + 9 | postfix_expression '.' IDENTIFIER + 10 | postfix_expression PTR_OP IDENTIFIER + 11 | postfix_expression INC_OP + 12 | postfix_expression DEC_OP + + 13 argument_expression_list: assignment_expression + 14 | argument_expression_list ',' assignment_expression + + 15 unary_expression: postfix_expression + 16 | INC_OP unary_expression + 17 | DEC_OP unary_expression + 18 | unary_operator cast_expression + 19 | SIZEOF unary_expression + 20 | SIZEOF '(' type_name ')' + + 21 unary_operator: '&' + 22 | '*' + 23 | '+' + 24 | '-' + 25 | '~' + 26 | '!' + + 27 cast_expression: unary_expression + 28 | '(' type_name ')' cast_expression + + 29 multiplicative_expression: cast_expression + 30 | multiplicative_expression '*' cast_expression + 31 | multiplicative_expression '/' cast_expression + 32 | multiplicative_expression '%' cast_expression + + 33 additive_expression: multiplicative_expression + 34 | additive_expression '+' multiplicative_expression + 35 | additive_expression '-' multiplicative_expression + + 36 shift_expression: additive_expression + 37 | shift_expression LEFT_OP additive_expression + 38 | shift_expression RIGHT_OP additive_expression + + 39 relational_expression: shift_expression + 40 | relational_expression '<' shift_expression + 41 | relational_expression '>' shift_expression + 42 | relational_expression LE_OP shift_expression + 43 | relational_expression GE_OP shift_expression + + 44 equality_expression: relational_expression + 45 | equality_expression EQ_OP relational_expression + 46 | equality_expression NE_OP relational_expression + + 47 and_expression: equality_expression + 48 | and_expression '&' equality_expression + + 49 exclusive_or_expression: and_expression + 50 | exclusive_or_expression '^' and_expression + + 51 inclusive_or_expression: exclusive_or_expression + 52 | inclusive_or_expression '|' exclusive_or_expression + + 53 logical_and_expression: inclusive_or_expression + 54 | logical_and_expression AND_OP inclusive_or_expression + + 55 logical_or_expression: logical_and_expression + 56 | logical_or_expression OR_OP logical_and_expression + + 57 conditional_expression: logical_or_expression + 58 | logical_or_expression '?' expression ':' conditional_expression + + 59 assignment_expression: conditional_expression + 60 | unary_expression assignment_operator assignment_expression + + 61 assignment_operator: '=' + 62 | MUL_ASSIGN + 63 | DIV_ASSIGN + 64 | MOD_ASSIGN + 65 | ADD_ASSIGN + 66 | SUB_ASSIGN + 67 | LEFT_ASSIGN + 68 | RIGHT_ASSIGN + 69 | AND_ASSIGN + 70 | XOR_ASSIGN + 71 | OR_ASSIGN + + 72 expression: assignment_expression + 73 | expression ',' assignment_expression + + 74 constant_expression: conditional_expression + + 75 declaration: declaration_specifiers ';' + 76 | declaration_specifiers init_declarator_list ';' + + 77 declaration_specifiers: storage_class_specifier + 78 | storage_class_specifier declaration_specifiers + 79 | type_specifier + 80 | type_specifier declaration_specifiers + 81 | type_qualifier + 82 | type_qualifier declaration_specifiers + + 83 init_declarator_list: init_declarator + 84 | init_declarator_list ',' init_declarator + + 85 init_declarator: declarator + 86 | declarator '=' initializer + + 87 storage_class_specifier: TYPEDEF + 88 | EXTERN + 89 | STATIC + 90 | AUTO + 91 | REGISTER + + 92 type_specifier: VOID + 93 | CHAR + 94 | SHORT + 95 | INT + 96 | LONG + 97 | FLOAT + 98 | DOUBLE + 99 | SIGNED + 100 | UNSIGNED + 101 | struct_or_union_specifier + 102 | enum_specifier + 103 | TYPE_NAME + + 104 struct_or_union_specifier: struct_or_union IDENTIFIER '{' struct_declaration_list '}' + 105 | struct_or_union '{' struct_declaration_list '}' + 106 | struct_or_union IDENTIFIER + + 107 struct_or_union: STRUCT + 108 | UNION + + 109 struct_declaration_list: struct_declaration + 110 | struct_declaration_list struct_declaration + + 111 struct_declaration: specifier_qualifier_list struct_declarator_list ';' + + 112 specifier_qualifier_list: type_specifier specifier_qualifier_list + 113 | type_specifier + 114 | type_qualifier specifier_qualifier_list + 115 | type_qualifier + + 116 struct_declarator_list: struct_declarator + 117 | struct_declarator_list ',' struct_declarator + + 118 struct_declarator: declarator + 119 | ':' constant_expression + 120 | declarator ':' constant_expression + + 121 enum_specifier: ENUM '{' enumerator_list '}' + 122 | ENUM IDENTIFIER '{' enumerator_list '}' + 123 | ENUM IDENTIFIER + + 124 enumerator_list: enumerator + 125 | enumerator_list ',' enumerator + + 126 enumerator: IDENTIFIER + 127 | IDENTIFIER '=' constant_expression + + 128 type_qualifier: CONST + 129 | VOLATILE + + 130 declarator: pointer direct_declarator + 131 | direct_declarator + + 132 direct_declarator: IDENTIFIER + 133 | '(' declarator ')' + 134 | direct_declarator '[' constant_expression ']' + 135 | direct_declarator '[' ']' + 136 | direct_declarator '(' parameter_type_list ')' + 137 | direct_declarator '(' identifier_list ')' + 138 | direct_declarator '(' ')' + + 139 pointer: '*' + 140 | '*' type_qualifier_list + 141 | '*' pointer + 142 | '*' type_qualifier_list pointer + + 143 type_qualifier_list: type_qualifier + 144 | type_qualifier_list type_qualifier + + 145 parameter_type_list: parameter_list + 146 | parameter_list ',' ELLIPSIS + + 147 parameter_list: parameter_declaration + 148 | parameter_list ',' parameter_declaration + + 149 parameter_declaration: declaration_specifiers declarator + 150 | declaration_specifiers abstract_declarator + 151 | declaration_specifiers + + 152 identifier_list: IDENTIFIER + 153 | identifier_list ',' IDENTIFIER + + 154 type_name: specifier_qualifier_list + 155 | specifier_qualifier_list abstract_declarator + + 156 abstract_declarator: pointer + 157 | direct_abstract_declarator + 158 | pointer direct_abstract_declarator + + 159 direct_abstract_declarator: '(' abstract_declarator ')' + 160 | '[' ']' + 161 | '[' constant_expression ']' + 162 | direct_abstract_declarator '[' ']' + 163 | direct_abstract_declarator '[' constant_expression ']' + 164 | '(' ')' + 165 | '(' parameter_type_list ')' + 166 | direct_abstract_declarator '(' ')' + 167 | direct_abstract_declarator '(' parameter_type_list ')' + + 168 initializer: assignment_expression + 169 | '{' initializer_list '}' + 170 | '{' initializer_list ',' '}' + + 171 initializer_list: initializer + 172 | initializer_list ',' initializer + + 173 statement: labeled_statement + 174 | compound_statement + 175 | expression_statement + 176 | selection_statement + 177 | iteration_statement + 178 | jump_statement + + 179 labeled_statement: IDENTIFIER ':' statement + 180 | CASE constant_expression ':' statement + 181 | DEFAULT ':' statement + + 182 compound_statement: '{' '}' + 183 | '{' statement_list '}' + 184 | '{' declaration_list '}' + 185 | '{' declaration_list statement_list '}' + + 186 declaration_list: declaration + 187 | declaration_list declaration + + 188 statement_list: statement + 189 | statement_list statement + + 190 expression_statement: ';' + 191 | expression ';' + + 192 selection_statement: IF '(' expression ')' statement + 193 | IF '(' expression ')' statement ELSE statement + 194 | SWITCH '(' expression ')' statement + + 195 iteration_statement: WHILE '(' expression ')' statement + 196 | DO statement WHILE '(' expression ')' ';' + 197 | FOR '(' expression_statement expression_statement ')' statement + 198 | FOR '(' expression_statement expression_statement expression ')' statement + + 199 jump_statement: GOTO IDENTIFIER ';' + 200 | CONTINUE ';' + 201 | BREAK ';' + 202 | RETURN ';' + 203 | RETURN expression ';' + + 204 translation_unit: external_declaration + 205 | translation_unit external_declaration + + 206 external_declaration: function_definition + 207 | declaration + + 208 function_definition: declaration_specifiers declarator declaration_list compound_statement + 209 | declaration_specifiers declarator compound_statement + 210 | declarator declaration_list compound_statement + 211 | declarator compound_statement + + +Terminals, with rules where they appear + +$end (0) 0 +'!' (33) 26 +'%' (37) 32 +'&' (38) 21 48 +'(' (40) 4 7 8 20 28 133 136 137 138 159 164 165 166 167 192 193 194 + 195 196 197 198 +')' (41) 4 7 8 20 28 133 136 137 138 159 164 165 166 167 192 193 194 + 195 196 197 198 +'*' (42) 22 30 139 140 141 142 +'+' (43) 23 34 +',' (44) 14 73 84 117 125 146 148 153 170 172 +'-' (45) 24 35 +'.' (46) 9 +'/' (47) 31 +':' (58) 58 119 120 179 180 181 +';' (59) 75 76 111 190 191 196 199 200 201 202 203 +'<' (60) 40 +'=' (61) 61 86 127 +'>' (62) 41 +'?' (63) 58 +'[' (91) 6 134 135 160 161 162 163 +']' (93) 6 134 135 160 161 162 163 +'^' (94) 50 +'{' (123) 104 105 121 122 169 170 182 183 184 185 +'|' (124) 52 +'}' (125) 104 105 121 122 169 170 182 183 184 185 +'~' (126) 25 +error (256) +IDENTIFIER (258) 1 9 10 104 106 122 123 126 127 132 152 153 179 199 +CONSTANT (259) 2 +STRING_LITERAL (260) 3 +SIZEOF (261) 19 20 +PTR_OP (262) 10 +INC_OP (263) 11 16 +DEC_OP (264) 12 17 +LEFT_OP (265) 37 +RIGHT_OP (266) 38 +LE_OP (267) 42 +GE_OP (268) 43 +EQ_OP (269) 45 +NE_OP (270) 46 +AND_OP (271) 54 +OR_OP (272) 56 +MUL_ASSIGN (273) 62 +DIV_ASSIGN (274) 63 +MOD_ASSIGN (275) 64 +ADD_ASSIGN (276) 65 +SUB_ASSIGN (277) 66 +LEFT_ASSIGN (278) 67 +RIGHT_ASSIGN (279) 68 +AND_ASSIGN (280) 69 +XOR_ASSIGN (281) 70 +OR_ASSIGN (282) 71 +TYPE_NAME (283) 103 +TYPEDEF (284) 87 +EXTERN (285) 88 +STATIC (286) 89 +AUTO (287) 90 +REGISTER (288) 91 +CHAR (289) 93 +SHORT (290) 94 +INT (291) 95 +LONG (292) 96 +SIGNED (293) 99 +UNSIGNED (294) 100 +FLOAT (295) 97 +DOUBLE (296) 98 +CONST (297) 128 +VOLATILE (298) 129 +VOID (299) 92 +STRUCT (300) 107 +UNION (301) 108 +ENUM (302) 121 122 123 +ELLIPSIS (303) 146 +CASE (304) 180 +DEFAULT (305) 181 +IF (306) 192 193 +ELSE (307) 193 +SWITCH (308) 194 +WHILE (309) 195 196 +DO (310) 196 +FOR (311) 197 198 +GOTO (312) 199 +CONTINUE (313) 200 +BREAK (314) 201 +RETURN (315) 202 203 + + +Nonterminals, with rules where they appear + +$accept (85) + on left: 0 +primary_expression (86) + on left: 1 2 3 4, on right: 5 +postfix_expression (87) + on left: 5 6 7 8 9 10 11 12, on right: 6 7 8 9 10 11 12 15 +argument_expression_list (88) + on left: 13 14, on right: 8 14 +unary_expression (89) + on left: 15 16 17 18 19 20, on right: 16 17 19 27 60 +unary_operator (90) + on left: 21 22 23 24 25 26, on right: 18 +cast_expression (91) + on left: 27 28, on right: 18 28 29 30 31 32 +multiplicative_expression (92) + on left: 29 30 31 32, on right: 30 31 32 33 34 35 +additive_expression (93) + on left: 33 34 35, on right: 34 35 36 37 38 +shift_expression (94) + on left: 36 37 38, on right: 37 38 39 40 41 42 43 +relational_expression (95) + on left: 39 40 41 42 43, on right: 40 41 42 43 44 45 46 +equality_expression (96) + on left: 44 45 46, on right: 45 46 47 48 +and_expression (97) + on left: 47 48, on right: 48 49 50 +exclusive_or_expression (98) + on left: 49 50, on right: 50 51 52 +inclusive_or_expression (99) + on left: 51 52, on right: 52 53 54 +logical_and_expression (100) + on left: 53 54, on right: 54 55 56 +logical_or_expression (101) + on left: 55 56, on right: 56 57 58 +conditional_expression (102) + on left: 57 58, on right: 58 59 74 +assignment_expression (103) + on left: 59 60, on right: 13 14 60 72 73 168 +assignment_operator (104) + on left: 61 62 63 64 65 66 67 68 69 70 71, on right: 60 +expression (105) + on left: 72 73, on right: 4 6 58 73 191 192 193 194 195 196 198 + 203 +constant_expression (106) + on left: 74, on right: 119 120 127 134 161 163 180 +declaration (107) + on left: 75 76, on right: 186 187 207 +declaration_specifiers (108) + on left: 77 78 79 80 81 82, on right: 75 76 78 80 82 149 150 151 + 208 209 +init_declarator_list (109) + on left: 83 84, on right: 76 84 +init_declarator (110) + on left: 85 86, on right: 83 84 +storage_class_specifier (111) + on left: 87 88 89 90 91, on right: 77 78 +type_specifier (112) + on left: 92 93 94 95 96 97 98 99 100 101 102 103, on right: 79 + 80 112 113 +struct_or_union_specifier (113) + on left: 104 105 106, on right: 101 +struct_or_union (114) + on left: 107 108, on right: 104 105 106 +struct_declaration_list (115) + on left: 109 110, on right: 104 105 110 +struct_declaration (116) + on left: 111, on right: 109 110 +specifier_qualifier_list (117) + on left: 112 113 114 115, on right: 111 112 114 154 155 +struct_declarator_list (118) + on left: 116 117, on right: 111 117 +struct_declarator (119) + on left: 118 119 120, on right: 116 117 +enum_specifier (120) + on left: 121 122 123, on right: 102 +enumerator_list (121) + on left: 124 125, on right: 121 122 125 +enumerator (122) + on left: 126 127, on right: 124 125 +type_qualifier (123) + on left: 128 129, on right: 81 82 114 115 143 144 +declarator (124) + on left: 130 131, on right: 85 86 118 120 133 149 208 209 210 211 +direct_declarator (125) + on left: 132 133 134 135 136 137 138, on right: 130 131 134 135 + 136 137 138 +pointer (126) + on left: 139 140 141 142, on right: 130 141 142 156 158 +type_qualifier_list (127) + on left: 143 144, on right: 140 142 144 +parameter_type_list (128) + on left: 145 146, on right: 136 165 167 +parameter_list (129) + on left: 147 148, on right: 145 146 148 +parameter_declaration (130) + on left: 149 150 151, on right: 147 148 +identifier_list (131) + on left: 152 153, on right: 137 153 +type_name (132) + on left: 154 155, on right: 20 28 +abstract_declarator (133) + on left: 156 157 158, on right: 150 155 159 +direct_abstract_declarator (134) + on left: 159 160 161 162 163 164 165 166 167, on right: 157 158 + 162 163 166 167 +initializer (135) + on left: 168 169 170, on right: 86 171 172 +initializer_list (136) + on left: 171 172, on right: 169 170 172 +statement (137) + on left: 173 174 175 176 177 178, on right: 179 180 181 188 189 + 192 193 194 195 196 197 198 +labeled_statement (138) + on left: 179 180 181, on right: 173 +compound_statement (139) + on left: 182 183 184 185, on right: 174 208 209 210 211 +declaration_list (140) + on left: 186 187, on right: 184 185 187 208 210 +statement_list (141) + on left: 188 189, on right: 183 185 189 +expression_statement (142) + on left: 190 191, on right: 175 197 198 +selection_statement (143) + on left: 192 193 194, on right: 176 +iteration_statement (144) + on left: 195 196 197 198, on right: 177 +jump_statement (145) + on left: 199 200 201 202 203, on right: 178 +translation_unit (146) + on left: 204 205, on right: 0 205 +external_declaration (147) + on left: 206 207, on right: 204 205 +function_definition (148) + on left: 208 209 210 211, on right: 206 + + +State 0 + + 0 $accept: . translation_unit $end + + IDENTIFIER shift, and go to state 1 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + + declaration go to state 24 + declaration_specifiers go to state 25 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + declarator go to state 32 + direct_declarator go to state 33 + pointer go to state 34 + translation_unit go to state 35 + external_declaration go to state 36 + function_definition go to state 37 + + +State 1 + + 132 direct_declarator: IDENTIFIER . + + $default reduce using rule 132 (direct_declarator) + + +State 2 + + 103 type_specifier: TYPE_NAME . + + $default reduce using rule 103 (type_specifier) + + +State 3 + + 87 storage_class_specifier: TYPEDEF . + + $default reduce using rule 87 (storage_class_specifier) + + +State 4 + + 88 storage_class_specifier: EXTERN . + + $default reduce using rule 88 (storage_class_specifier) + + +State 5 + + 89 storage_class_specifier: STATIC . + + $default reduce using rule 89 (storage_class_specifier) + + +State 6 + + 90 storage_class_specifier: AUTO . + + $default reduce using rule 90 (storage_class_specifier) + + +State 7 + + 91 storage_class_specifier: REGISTER . + + $default reduce using rule 91 (storage_class_specifier) + + +State 8 + + 93 type_specifier: CHAR . + + $default reduce using rule 93 (type_specifier) + + +State 9 + + 94 type_specifier: SHORT . + + $default reduce using rule 94 (type_specifier) + + +State 10 + + 95 type_specifier: INT . + + $default reduce using rule 95 (type_specifier) + + +State 11 + + 96 type_specifier: LONG . + + $default reduce using rule 96 (type_specifier) + + +State 12 + + 99 type_specifier: SIGNED . + + $default reduce using rule 99 (type_specifier) + + +State 13 + + 100 type_specifier: UNSIGNED . + + $default reduce using rule 100 (type_specifier) + + +State 14 + + 97 type_specifier: FLOAT . + + $default reduce using rule 97 (type_specifier) + + +State 15 + + 98 type_specifier: DOUBLE . + + $default reduce using rule 98 (type_specifier) + + +State 16 + + 128 type_qualifier: CONST . + + $default reduce using rule 128 (type_qualifier) + + +State 17 + + 129 type_qualifier: VOLATILE . + + $default reduce using rule 129 (type_qualifier) + + +State 18 + + 92 type_specifier: VOID . + + $default reduce using rule 92 (type_specifier) + + +State 19 + + 107 struct_or_union: STRUCT . + + $default reduce using rule 107 (struct_or_union) + + +State 20 + + 108 struct_or_union: UNION . + + $default reduce using rule 108 (struct_or_union) + + +State 21 + + 121 enum_specifier: ENUM . '{' enumerator_list '}' + 122 | ENUM . IDENTIFIER '{' enumerator_list '}' + 123 | ENUM . IDENTIFIER + + IDENTIFIER shift, and go to state 38 + '{' shift, and go to state 39 + + +State 22 + + 133 direct_declarator: '(' . declarator ')' + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + + declarator go to state 40 + direct_declarator go to state 33 + pointer go to state 34 + + +State 23 + + 139 pointer: '*' . + 140 | '*' . type_qualifier_list + 141 | '*' . pointer + 142 | '*' . type_qualifier_list pointer + + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + '*' shift, and go to state 23 + + $default reduce using rule 139 (pointer) + + type_qualifier go to state 41 + pointer go to state 42 + type_qualifier_list go to state 43 + + +State 24 + + 207 external_declaration: declaration . + + $default reduce using rule 207 (external_declaration) + + +State 25 + + 75 declaration: declaration_specifiers . ';' + 76 | declaration_specifiers . init_declarator_list ';' + 208 function_definition: declaration_specifiers . declarator declaration_list compound_statement + 209 | declaration_specifiers . declarator compound_statement + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + ';' shift, and go to state 44 + + init_declarator_list go to state 45 + init_declarator go to state 46 + declarator go to state 47 + direct_declarator go to state 33 + pointer go to state 34 + + +State 26 + + 77 declaration_specifiers: storage_class_specifier . + 78 | storage_class_specifier . declaration_specifiers + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + $default reduce using rule 77 (declaration_specifiers) + + declaration_specifiers go to state 48 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + + +State 27 + + 79 declaration_specifiers: type_specifier . + 80 | type_specifier . declaration_specifiers + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + $default reduce using rule 79 (declaration_specifiers) + + declaration_specifiers go to state 49 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + + +State 28 + + 101 type_specifier: struct_or_union_specifier . + + $default reduce using rule 101 (type_specifier) + + +State 29 + + 104 struct_or_union_specifier: struct_or_union . IDENTIFIER '{' struct_declaration_list '}' + 105 | struct_or_union . '{' struct_declaration_list '}' + 106 | struct_or_union . IDENTIFIER + + IDENTIFIER shift, and go to state 50 + '{' shift, and go to state 51 + + +State 30 + + 102 type_specifier: enum_specifier . + + $default reduce using rule 102 (type_specifier) + + +State 31 + + 81 declaration_specifiers: type_qualifier . + 82 | type_qualifier . declaration_specifiers + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + $default reduce using rule 81 (declaration_specifiers) + + declaration_specifiers go to state 52 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + + +State 32 + + 210 function_definition: declarator . declaration_list compound_statement + 211 | declarator . compound_statement + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '{' shift, and go to state 53 + + declaration go to state 54 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + compound_statement go to state 56 + declaration_list go to state 57 + + +State 33 + + 131 declarator: direct_declarator . + 134 direct_declarator: direct_declarator . '[' constant_expression ']' + 135 | direct_declarator . '[' ']' + 136 | direct_declarator . '(' parameter_type_list ')' + 137 | direct_declarator . '(' identifier_list ')' + 138 | direct_declarator . '(' ')' + + '(' shift, and go to state 58 + '[' shift, and go to state 59 + + $default reduce using rule 131 (declarator) + + +State 34 + + 130 declarator: pointer . direct_declarator + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + + direct_declarator go to state 60 + + +State 35 + + 0 $accept: translation_unit . $end + 205 translation_unit: translation_unit . external_declaration + + $end shift, and go to state 61 + IDENTIFIER shift, and go to state 1 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + + declaration go to state 24 + declaration_specifiers go to state 25 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + declarator go to state 32 + direct_declarator go to state 33 + pointer go to state 34 + external_declaration go to state 62 + function_definition go to state 37 + + +State 36 + + 204 translation_unit: external_declaration . + + $default reduce using rule 204 (translation_unit) + + +State 37 + + 206 external_declaration: function_definition . + + $default reduce using rule 206 (external_declaration) + + +State 38 + + 122 enum_specifier: ENUM IDENTIFIER . '{' enumerator_list '}' + 123 | ENUM IDENTIFIER . + + '{' shift, and go to state 63 + + $default reduce using rule 123 (enum_specifier) + + +State 39 + + 121 enum_specifier: ENUM '{' . enumerator_list '}' + + IDENTIFIER shift, and go to state 64 + + enumerator_list go to state 65 + enumerator go to state 66 + + +State 40 + + 133 direct_declarator: '(' declarator . ')' + + ')' shift, and go to state 67 + + +State 41 + + 143 type_qualifier_list: type_qualifier . + + $default reduce using rule 143 (type_qualifier_list) + + +State 42 + + 141 pointer: '*' pointer . + + $default reduce using rule 141 (pointer) + + +State 43 + + 140 pointer: '*' type_qualifier_list . + 142 | '*' type_qualifier_list . pointer + 144 type_qualifier_list: type_qualifier_list . type_qualifier + + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + '*' shift, and go to state 23 + + $default reduce using rule 140 (pointer) + + type_qualifier go to state 68 + pointer go to state 69 + + +State 44 + + 75 declaration: declaration_specifiers ';' . + + $default reduce using rule 75 (declaration) + + +State 45 + + 76 declaration: declaration_specifiers init_declarator_list . ';' + 84 init_declarator_list: init_declarator_list . ',' init_declarator + + ',' shift, and go to state 70 + ';' shift, and go to state 71 + + +State 46 + + 83 init_declarator_list: init_declarator . + + $default reduce using rule 83 (init_declarator_list) + + +State 47 + + 85 init_declarator: declarator . + 86 | declarator . '=' initializer + 208 function_definition: declaration_specifiers declarator . declaration_list compound_statement + 209 | declaration_specifiers declarator . compound_statement + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '=' shift, and go to state 72 + '{' shift, and go to state 53 + + $default reduce using rule 85 (init_declarator) + + declaration go to state 54 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + compound_statement go to state 73 + declaration_list go to state 74 + + +State 48 + + 78 declaration_specifiers: storage_class_specifier declaration_specifiers . + + $default reduce using rule 78 (declaration_specifiers) + + +State 49 + + 80 declaration_specifiers: type_specifier declaration_specifiers . + + $default reduce using rule 80 (declaration_specifiers) + + +State 50 + + 104 struct_or_union_specifier: struct_or_union IDENTIFIER . '{' struct_declaration_list '}' + 106 | struct_or_union IDENTIFIER . + + '{' shift, and go to state 75 + + $default reduce using rule 106 (struct_or_union_specifier) + + +State 51 + + 105 struct_or_union_specifier: struct_or_union '{' . struct_declaration_list '}' + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + struct_declaration_list go to state 77 + struct_declaration go to state 78 + specifier_qualifier_list go to state 79 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 52 + + 82 declaration_specifiers: type_qualifier declaration_specifiers . + + $default reduce using rule 82 (declaration_specifiers) + + +State 53 + + 182 compound_statement: '{' . '}' + 183 | '{' . statement_list '}' + 184 | '{' . declaration_list '}' + 185 | '{' . declaration_list statement_list '}' + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + '}' shift, and go to state 106 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + declaration go to state 54 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + statement go to state 125 + labeled_statement go to state 126 + compound_statement go to state 127 + declaration_list go to state 128 + statement_list go to state 129 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 54 + + 186 declaration_list: declaration . + + $default reduce using rule 186 (declaration_list) + + +State 55 + + 75 declaration: declaration_specifiers . ';' + 76 | declaration_specifiers . init_declarator_list ';' + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + ';' shift, and go to state 44 + + init_declarator_list go to state 45 + init_declarator go to state 46 + declarator go to state 134 + direct_declarator go to state 33 + pointer go to state 34 + + +State 56 + + 211 function_definition: declarator compound_statement . + + $default reduce using rule 211 (function_definition) + + +State 57 + + 187 declaration_list: declaration_list . declaration + 210 function_definition: declarator declaration_list . compound_statement + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '{' shift, and go to state 53 + + declaration go to state 135 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + compound_statement go to state 136 + + +State 58 + + 136 direct_declarator: direct_declarator '(' . parameter_type_list ')' + 137 | direct_declarator '(' . identifier_list ')' + 138 | direct_declarator '(' . ')' + + IDENTIFIER shift, and go to state 137 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + ')' shift, and go to state 138 + + declaration_specifiers go to state 139 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + parameter_type_list go to state 140 + parameter_list go to state 141 + parameter_declaration go to state 142 + identifier_list go to state 143 + + +State 59 + + 134 direct_declarator: direct_declarator '[' . constant_expression ']' + 135 | direct_declarator '[' . ']' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + ']' shift, and go to state 145 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 148 + + +State 60 + + 130 declarator: pointer direct_declarator . + 134 direct_declarator: direct_declarator . '[' constant_expression ']' + 135 | direct_declarator . '[' ']' + 136 | direct_declarator . '(' parameter_type_list ')' + 137 | direct_declarator . '(' identifier_list ')' + 138 | direct_declarator . '(' ')' + + '(' shift, and go to state 58 + '[' shift, and go to state 59 + + $default reduce using rule 130 (declarator) + + +State 61 + + 0 $accept: translation_unit $end . + + $default accept + + +State 62 + + 205 translation_unit: translation_unit external_declaration . + + $default reduce using rule 205 (translation_unit) + + +State 63 + + 122 enum_specifier: ENUM IDENTIFIER '{' . enumerator_list '}' + + IDENTIFIER shift, and go to state 64 + + enumerator_list go to state 149 + enumerator go to state 66 + + +State 64 + + 126 enumerator: IDENTIFIER . + 127 | IDENTIFIER . '=' constant_expression + + '=' shift, and go to state 150 + + $default reduce using rule 126 (enumerator) + + +State 65 + + 121 enum_specifier: ENUM '{' enumerator_list . '}' + 125 enumerator_list: enumerator_list . ',' enumerator + + ',' shift, and go to state 151 + '}' shift, and go to state 152 + + +State 66 + + 124 enumerator_list: enumerator . + + $default reduce using rule 124 (enumerator_list) + + +State 67 + + 133 direct_declarator: '(' declarator ')' . + + $default reduce using rule 133 (direct_declarator) + + +State 68 + + 144 type_qualifier_list: type_qualifier_list type_qualifier . + + $default reduce using rule 144 (type_qualifier_list) + + +State 69 + + 142 pointer: '*' type_qualifier_list pointer . + + $default reduce using rule 142 (pointer) + + +State 70 + + 84 init_declarator_list: init_declarator_list ',' . init_declarator + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + + init_declarator go to state 153 + declarator go to state 134 + direct_declarator go to state 33 + pointer go to state 34 + + +State 71 + + 76 declaration: declaration_specifiers init_declarator_list ';' . + + $default reduce using rule 76 (declaration) + + +State 72 + + 86 init_declarator: declarator '=' . initializer + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + '{' shift, and go to state 154 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 155 + initializer go to state 156 + + +State 73 + + 209 function_definition: declaration_specifiers declarator compound_statement . + + $default reduce using rule 209 (function_definition) + + +State 74 + + 187 declaration_list: declaration_list . declaration + 208 function_definition: declaration_specifiers declarator declaration_list . compound_statement + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '{' shift, and go to state 53 + + declaration go to state 135 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + compound_statement go to state 157 + + +State 75 + + 104 struct_or_union_specifier: struct_or_union IDENTIFIER '{' . struct_declaration_list '}' + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + struct_declaration_list go to state 158 + struct_declaration go to state 78 + specifier_qualifier_list go to state 79 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 76 + + 112 specifier_qualifier_list: type_specifier . specifier_qualifier_list + 113 | type_specifier . + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + $default reduce using rule 113 (specifier_qualifier_list) + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + specifier_qualifier_list go to state 159 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 77 + + 105 struct_or_union_specifier: struct_or_union '{' struct_declaration_list . '}' + 110 struct_declaration_list: struct_declaration_list . struct_declaration + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '}' shift, and go to state 160 + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + struct_declaration go to state 161 + specifier_qualifier_list go to state 79 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 78 + + 109 struct_declaration_list: struct_declaration . + + $default reduce using rule 109 (struct_declaration_list) + + +State 79 + + 111 struct_declaration: specifier_qualifier_list . struct_declarator_list ';' + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + ':' shift, and go to state 162 + + struct_declarator_list go to state 163 + struct_declarator go to state 164 + declarator go to state 165 + direct_declarator go to state 33 + pointer go to state 34 + + +State 80 + + 114 specifier_qualifier_list: type_qualifier . specifier_qualifier_list + 115 | type_qualifier . + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + + $default reduce using rule 115 (specifier_qualifier_list) + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + specifier_qualifier_list go to state 166 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 81 + + 1 primary_expression: IDENTIFIER . + 179 labeled_statement: IDENTIFIER . ':' statement + + ':' shift, and go to state 167 + + $default reduce using rule 1 (primary_expression) + + +State 82 + + 2 primary_expression: CONSTANT . + + $default reduce using rule 2 (primary_expression) + + +State 83 + + 3 primary_expression: STRING_LITERAL . + + $default reduce using rule 3 (primary_expression) + + +State 84 + + 19 unary_expression: SIZEOF . unary_expression + 20 | SIZEOF . '(' type_name ')' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 168 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 169 + unary_operator go to state 110 + + +State 85 + + 16 unary_expression: INC_OP . unary_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 170 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 171 + unary_operator go to state 110 + + +State 86 + + 17 unary_expression: DEC_OP . unary_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 170 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 172 + unary_operator go to state 110 + + +State 87 + + 180 labeled_statement: CASE . constant_expression ':' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 173 + + +State 88 + + 181 labeled_statement: DEFAULT . ':' statement + + ':' shift, and go to state 174 + + +State 89 + + 192 selection_statement: IF . '(' expression ')' statement + 193 | IF . '(' expression ')' statement ELSE statement + + '(' shift, and go to state 175 + + +State 90 + + 194 selection_statement: SWITCH . '(' expression ')' statement + + '(' shift, and go to state 176 + + +State 91 + + 195 iteration_statement: WHILE . '(' expression ')' statement + + '(' shift, and go to state 177 + + +State 92 + + 196 iteration_statement: DO . statement WHILE '(' expression ')' ';' + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 178 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 93 + + 197 iteration_statement: FOR . '(' expression_statement expression_statement ')' statement + 198 | FOR . '(' expression_statement expression_statement expression ')' statement + + '(' shift, and go to state 179 + + +State 94 + + 199 jump_statement: GOTO . IDENTIFIER ';' + + IDENTIFIER shift, and go to state 180 + + +State 95 + + 200 jump_statement: CONTINUE . ';' + + ';' shift, and go to state 181 + + +State 96 + + 201 jump_statement: BREAK . ';' + + ';' shift, and go to state 182 + + +State 97 + + 202 jump_statement: RETURN . ';' + 203 | RETURN . expression ';' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 183 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 184 + + +State 98 + + 4 primary_expression: '(' . expression ')' + 28 cast_expression: '(' . type_name ')' cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 185 + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + specifier_qualifier_list go to state 186 + enum_specifier go to state 30 + type_qualifier go to state 80 + type_name go to state 187 + + +State 99 + + 21 unary_operator: '&' . + + $default reduce using rule 21 (unary_operator) + + +State 100 + + 22 unary_operator: '*' . + + $default reduce using rule 22 (unary_operator) + + +State 101 + + 23 unary_operator: '+' . + + $default reduce using rule 23 (unary_operator) + + +State 102 + + 24 unary_operator: '-' . + + $default reduce using rule 24 (unary_operator) + + +State 103 + + 25 unary_operator: '~' . + + $default reduce using rule 25 (unary_operator) + + +State 104 + + 26 unary_operator: '!' . + + $default reduce using rule 26 (unary_operator) + + +State 105 + + 190 expression_statement: ';' . + + $default reduce using rule 190 (expression_statement) + + +State 106 + + 182 compound_statement: '{' '}' . + + $default reduce using rule 182 (compound_statement) + + +State 107 + + 5 postfix_expression: primary_expression . + + $default reduce using rule 5 (postfix_expression) + + +State 108 + + 6 postfix_expression: postfix_expression . '[' expression ']' + 7 | postfix_expression . '(' ')' + 8 | postfix_expression . '(' argument_expression_list ')' + 9 | postfix_expression . '.' IDENTIFIER + 10 | postfix_expression . PTR_OP IDENTIFIER + 11 | postfix_expression . INC_OP + 12 | postfix_expression . DEC_OP + 15 unary_expression: postfix_expression . + + PTR_OP shift, and go to state 188 + INC_OP shift, and go to state 189 + DEC_OP shift, and go to state 190 + '(' shift, and go to state 191 + '[' shift, and go to state 192 + '.' shift, and go to state 193 + + $default reduce using rule 15 (unary_expression) + + +State 109 + + 27 cast_expression: unary_expression . + 60 assignment_expression: unary_expression . assignment_operator assignment_expression + + MUL_ASSIGN shift, and go to state 194 + DIV_ASSIGN shift, and go to state 195 + MOD_ASSIGN shift, and go to state 196 + ADD_ASSIGN shift, and go to state 197 + SUB_ASSIGN shift, and go to state 198 + LEFT_ASSIGN shift, and go to state 199 + RIGHT_ASSIGN shift, and go to state 200 + AND_ASSIGN shift, and go to state 201 + XOR_ASSIGN shift, and go to state 202 + OR_ASSIGN shift, and go to state 203 + '=' shift, and go to state 204 + + $default reduce using rule 27 (cast_expression) + + assignment_operator go to state 205 + + +State 110 + + 18 unary_expression: unary_operator . cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 206 + + +State 111 + + 29 multiplicative_expression: cast_expression . + + $default reduce using rule 29 (multiplicative_expression) + + +State 112 + + 30 multiplicative_expression: multiplicative_expression . '*' cast_expression + 31 | multiplicative_expression . '/' cast_expression + 32 | multiplicative_expression . '%' cast_expression + 33 additive_expression: multiplicative_expression . + + '*' shift, and go to state 207 + '/' shift, and go to state 208 + '%' shift, and go to state 209 + + $default reduce using rule 33 (additive_expression) + + +State 113 + + 34 additive_expression: additive_expression . '+' multiplicative_expression + 35 | additive_expression . '-' multiplicative_expression + 36 shift_expression: additive_expression . + + '+' shift, and go to state 210 + '-' shift, and go to state 211 + + $default reduce using rule 36 (shift_expression) + + +State 114 + + 37 shift_expression: shift_expression . LEFT_OP additive_expression + 38 | shift_expression . RIGHT_OP additive_expression + 39 relational_expression: shift_expression . + + LEFT_OP shift, and go to state 212 + RIGHT_OP shift, and go to state 213 + + $default reduce using rule 39 (relational_expression) + + +State 115 + + 40 relational_expression: relational_expression . '<' shift_expression + 41 | relational_expression . '>' shift_expression + 42 | relational_expression . LE_OP shift_expression + 43 | relational_expression . GE_OP shift_expression + 44 equality_expression: relational_expression . + + LE_OP shift, and go to state 214 + GE_OP shift, and go to state 215 + '<' shift, and go to state 216 + '>' shift, and go to state 217 + + $default reduce using rule 44 (equality_expression) + + +State 116 + + 45 equality_expression: equality_expression . EQ_OP relational_expression + 46 | equality_expression . NE_OP relational_expression + 47 and_expression: equality_expression . + + EQ_OP shift, and go to state 218 + NE_OP shift, and go to state 219 + + $default reduce using rule 47 (and_expression) + + +State 117 + + 48 and_expression: and_expression . '&' equality_expression + 49 exclusive_or_expression: and_expression . + + '&' shift, and go to state 220 + + $default reduce using rule 49 (exclusive_or_expression) + + +State 118 + + 50 exclusive_or_expression: exclusive_or_expression . '^' and_expression + 51 inclusive_or_expression: exclusive_or_expression . + + '^' shift, and go to state 221 + + $default reduce using rule 51 (inclusive_or_expression) + + +State 119 + + 52 inclusive_or_expression: inclusive_or_expression . '|' exclusive_or_expression + 53 logical_and_expression: inclusive_or_expression . + + '|' shift, and go to state 222 + + $default reduce using rule 53 (logical_and_expression) + + +State 120 + + 54 logical_and_expression: logical_and_expression . AND_OP inclusive_or_expression + 55 logical_or_expression: logical_and_expression . + + AND_OP shift, and go to state 223 + + $default reduce using rule 55 (logical_or_expression) + + +State 121 + + 56 logical_or_expression: logical_or_expression . OR_OP logical_and_expression + 57 conditional_expression: logical_or_expression . + 58 | logical_or_expression . '?' expression ':' conditional_expression + + OR_OP shift, and go to state 224 + '?' shift, and go to state 225 + + $default reduce using rule 57 (conditional_expression) + + +State 122 + + 59 assignment_expression: conditional_expression . + + $default reduce using rule 59 (assignment_expression) + + +State 123 + + 72 expression: assignment_expression . + + $default reduce using rule 72 (expression) + + +State 124 + + 73 expression: expression . ',' assignment_expression + 191 expression_statement: expression . ';' + + ',' shift, and go to state 226 + ';' shift, and go to state 227 + + +State 125 + + 188 statement_list: statement . + + $default reduce using rule 188 (statement_list) + + +State 126 + + 173 statement: labeled_statement . + + $default reduce using rule 173 (statement) + + +State 127 + + 174 statement: compound_statement . + + $default reduce using rule 174 (statement) + + +State 128 + + 184 compound_statement: '{' declaration_list . '}' + 185 | '{' declaration_list . statement_list '}' + 187 declaration_list: declaration_list . declaration + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + '}' shift, and go to state 228 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + declaration go to state 135 + declaration_specifiers go to state 55 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + statement go to state 125 + labeled_statement go to state 126 + compound_statement go to state 127 + statement_list go to state 229 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 129 + + 183 compound_statement: '{' statement_list . '}' + 189 statement_list: statement_list . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + '}' shift, and go to state 230 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 231 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 130 + + 175 statement: expression_statement . + + $default reduce using rule 175 (statement) + + +State 131 + + 176 statement: selection_statement . + + $default reduce using rule 176 (statement) + + +State 132 + + 177 statement: iteration_statement . + + $default reduce using rule 177 (statement) + + +State 133 + + 178 statement: jump_statement . + + $default reduce using rule 178 (statement) + + +State 134 + + 85 init_declarator: declarator . + 86 | declarator . '=' initializer + + '=' shift, and go to state 72 + + $default reduce using rule 85 (init_declarator) + + +State 135 + + 187 declaration_list: declaration_list declaration . + + $default reduce using rule 187 (declaration_list) + + +State 136 + + 210 function_definition: declarator declaration_list compound_statement . + + $default reduce using rule 210 (function_definition) + + +State 137 + + 152 identifier_list: IDENTIFIER . + + $default reduce using rule 152 (identifier_list) + + +State 138 + + 138 direct_declarator: direct_declarator '(' ')' . + + $default reduce using rule 138 (direct_declarator) + + +State 139 + + 149 parameter_declaration: declaration_specifiers . declarator + 150 | declaration_specifiers . abstract_declarator + 151 | declaration_specifiers . + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 232 + '[' shift, and go to state 233 + '*' shift, and go to state 23 + + $default reduce using rule 151 (parameter_declaration) + + declarator go to state 234 + direct_declarator go to state 33 + pointer go to state 235 + abstract_declarator go to state 236 + direct_abstract_declarator go to state 237 + + +State 140 + + 136 direct_declarator: direct_declarator '(' parameter_type_list . ')' + + ')' shift, and go to state 238 + + +State 141 + + 145 parameter_type_list: parameter_list . + 146 | parameter_list . ',' ELLIPSIS + 148 parameter_list: parameter_list . ',' parameter_declaration + + ',' shift, and go to state 239 + + $default reduce using rule 145 (parameter_type_list) + + +State 142 + + 147 parameter_list: parameter_declaration . + + $default reduce using rule 147 (parameter_list) + + +State 143 + + 137 direct_declarator: direct_declarator '(' identifier_list . ')' + 153 identifier_list: identifier_list . ',' IDENTIFIER + + ')' shift, and go to state 240 + ',' shift, and go to state 241 + + +State 144 + + 1 primary_expression: IDENTIFIER . + + $default reduce using rule 1 (primary_expression) + + +State 145 + + 135 direct_declarator: direct_declarator '[' ']' . + + $default reduce using rule 135 (direct_declarator) + + +State 146 + + 27 cast_expression: unary_expression . + + $default reduce using rule 27 (cast_expression) + + +State 147 + + 74 constant_expression: conditional_expression . + + $default reduce using rule 74 (constant_expression) + + +State 148 + + 134 direct_declarator: direct_declarator '[' constant_expression . ']' + + ']' shift, and go to state 242 + + +State 149 + + 122 enum_specifier: ENUM IDENTIFIER '{' enumerator_list . '}' + 125 enumerator_list: enumerator_list . ',' enumerator + + ',' shift, and go to state 151 + '}' shift, and go to state 243 + + +State 150 + + 127 enumerator: IDENTIFIER '=' . constant_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 244 + + +State 151 + + 125 enumerator_list: enumerator_list ',' . enumerator + + IDENTIFIER shift, and go to state 64 + + enumerator go to state 245 + + +State 152 + + 121 enum_specifier: ENUM '{' enumerator_list '}' . + + $default reduce using rule 121 (enum_specifier) + + +State 153 + + 84 init_declarator_list: init_declarator_list ',' init_declarator . + + $default reduce using rule 84 (init_declarator_list) + + +State 154 + + 169 initializer: '{' . initializer_list '}' + 170 | '{' . initializer_list ',' '}' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + '{' shift, and go to state 154 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 155 + initializer go to state 246 + initializer_list go to state 247 + + +State 155 + + 168 initializer: assignment_expression . + + $default reduce using rule 168 (initializer) + + +State 156 + + 86 init_declarator: declarator '=' initializer . + + $default reduce using rule 86 (init_declarator) + + +State 157 + + 208 function_definition: declaration_specifiers declarator declaration_list compound_statement . + + $default reduce using rule 208 (function_definition) + + +State 158 + + 104 struct_or_union_specifier: struct_or_union IDENTIFIER '{' struct_declaration_list . '}' + 110 struct_declaration_list: struct_declaration_list . struct_declaration + + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '}' shift, and go to state 248 + + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + struct_declaration go to state 161 + specifier_qualifier_list go to state 79 + enum_specifier go to state 30 + type_qualifier go to state 80 + + +State 159 + + 112 specifier_qualifier_list: type_specifier specifier_qualifier_list . + + $default reduce using rule 112 (specifier_qualifier_list) + + +State 160 + + 105 struct_or_union_specifier: struct_or_union '{' struct_declaration_list '}' . + + $default reduce using rule 105 (struct_or_union_specifier) + + +State 161 + + 110 struct_declaration_list: struct_declaration_list struct_declaration . + + $default reduce using rule 110 (struct_declaration_list) + + +State 162 + + 119 struct_declarator: ':' . constant_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 249 + + +State 163 + + 111 struct_declaration: specifier_qualifier_list struct_declarator_list . ';' + 117 struct_declarator_list: struct_declarator_list . ',' struct_declarator + + ',' shift, and go to state 250 + ';' shift, and go to state 251 + + +State 164 + + 116 struct_declarator_list: struct_declarator . + + $default reduce using rule 116 (struct_declarator_list) + + +State 165 + + 118 struct_declarator: declarator . + 120 | declarator . ':' constant_expression + + ':' shift, and go to state 252 + + $default reduce using rule 118 (struct_declarator) + + +State 166 + + 114 specifier_qualifier_list: type_qualifier specifier_qualifier_list . + + $default reduce using rule 114 (specifier_qualifier_list) + + +State 167 + + 179 labeled_statement: IDENTIFIER ':' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 253 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 168 + + 4 primary_expression: '(' . expression ')' + 20 unary_expression: SIZEOF '(' . type_name ')' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + TYPE_NAME shift, and go to state 2 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 185 + type_specifier go to state 76 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + specifier_qualifier_list go to state 186 + enum_specifier go to state 30 + type_qualifier go to state 80 + type_name go to state 254 + + +State 169 + + 19 unary_expression: SIZEOF unary_expression . + + $default reduce using rule 19 (unary_expression) + + +State 170 + + 4 primary_expression: '(' . expression ')' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 185 + + +State 171 + + 16 unary_expression: INC_OP unary_expression . + + $default reduce using rule 16 (unary_expression) + + +State 172 + + 17 unary_expression: DEC_OP unary_expression . + + $default reduce using rule 17 (unary_expression) + + +State 173 + + 180 labeled_statement: CASE constant_expression . ':' statement + + ':' shift, and go to state 255 + + +State 174 + + 181 labeled_statement: DEFAULT ':' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 256 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 175 + + 192 selection_statement: IF '(' . expression ')' statement + 193 | IF '(' . expression ')' statement ELSE statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 257 + + +State 176 + + 194 selection_statement: SWITCH '(' . expression ')' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 258 + + +State 177 + + 195 iteration_statement: WHILE '(' . expression ')' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 259 + + +State 178 + + 196 iteration_statement: DO statement . WHILE '(' expression ')' ';' + + WHILE shift, and go to state 260 + + +State 179 + + 197 iteration_statement: FOR '(' . expression_statement expression_statement ')' statement + 198 | FOR '(' . expression_statement expression_statement expression ')' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + expression_statement go to state 261 + + +State 180 + + 199 jump_statement: GOTO IDENTIFIER . ';' + + ';' shift, and go to state 262 + + +State 181 + + 200 jump_statement: CONTINUE ';' . + + $default reduce using rule 200 (jump_statement) + + +State 182 + + 201 jump_statement: BREAK ';' . + + $default reduce using rule 201 (jump_statement) + + +State 183 + + 202 jump_statement: RETURN ';' . + + $default reduce using rule 202 (jump_statement) + + +State 184 + + 73 expression: expression . ',' assignment_expression + 203 jump_statement: RETURN expression . ';' + + ',' shift, and go to state 226 + ';' shift, and go to state 263 + + +State 185 + + 4 primary_expression: '(' expression . ')' + 73 expression: expression . ',' assignment_expression + + ')' shift, and go to state 264 + ',' shift, and go to state 226 + + +State 186 + + 154 type_name: specifier_qualifier_list . + 155 | specifier_qualifier_list . abstract_declarator + + '(' shift, and go to state 265 + '[' shift, and go to state 233 + '*' shift, and go to state 23 + + $default reduce using rule 154 (type_name) + + pointer go to state 266 + abstract_declarator go to state 267 + direct_abstract_declarator go to state 237 + + +State 187 + + 28 cast_expression: '(' type_name . ')' cast_expression + + ')' shift, and go to state 268 + + +State 188 + + 10 postfix_expression: postfix_expression PTR_OP . IDENTIFIER + + IDENTIFIER shift, and go to state 269 + + +State 189 + + 11 postfix_expression: postfix_expression INC_OP . + + $default reduce using rule 11 (postfix_expression) + + +State 190 + + 12 postfix_expression: postfix_expression DEC_OP . + + $default reduce using rule 12 (postfix_expression) + + +State 191 + + 7 postfix_expression: postfix_expression '(' . ')' + 8 | postfix_expression '(' . argument_expression_list ')' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + ')' shift, and go to state 270 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + argument_expression_list go to state 271 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 272 + + +State 192 + + 6 postfix_expression: postfix_expression '[' . expression ']' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 273 + + +State 193 + + 9 postfix_expression: postfix_expression '.' . IDENTIFIER + + IDENTIFIER shift, and go to state 274 + + +State 194 + + 62 assignment_operator: MUL_ASSIGN . + + $default reduce using rule 62 (assignment_operator) + + +State 195 + + 63 assignment_operator: DIV_ASSIGN . + + $default reduce using rule 63 (assignment_operator) + + +State 196 + + 64 assignment_operator: MOD_ASSIGN . + + $default reduce using rule 64 (assignment_operator) + + +State 197 + + 65 assignment_operator: ADD_ASSIGN . + + $default reduce using rule 65 (assignment_operator) + + +State 198 + + 66 assignment_operator: SUB_ASSIGN . + + $default reduce using rule 66 (assignment_operator) + + +State 199 + + 67 assignment_operator: LEFT_ASSIGN . + + $default reduce using rule 67 (assignment_operator) + + +State 200 + + 68 assignment_operator: RIGHT_ASSIGN . + + $default reduce using rule 68 (assignment_operator) + + +State 201 + + 69 assignment_operator: AND_ASSIGN . + + $default reduce using rule 69 (assignment_operator) + + +State 202 + + 70 assignment_operator: XOR_ASSIGN . + + $default reduce using rule 70 (assignment_operator) + + +State 203 + + 71 assignment_operator: OR_ASSIGN . + + $default reduce using rule 71 (assignment_operator) + + +State 204 + + 61 assignment_operator: '=' . + + $default reduce using rule 61 (assignment_operator) + + +State 205 + + 60 assignment_expression: unary_expression assignment_operator . assignment_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 275 + + +State 206 + + 18 unary_expression: unary_operator cast_expression . + + $default reduce using rule 18 (unary_expression) + + +State 207 + + 30 multiplicative_expression: multiplicative_expression '*' . cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 276 + + +State 208 + + 31 multiplicative_expression: multiplicative_expression '/' . cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 277 + + +State 209 + + 32 multiplicative_expression: multiplicative_expression '%' . cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 278 + + +State 210 + + 34 additive_expression: additive_expression '+' . multiplicative_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 279 + + +State 211 + + 35 additive_expression: additive_expression '-' . multiplicative_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 280 + + +State 212 + + 37 shift_expression: shift_expression LEFT_OP . additive_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 281 + + +State 213 + + 38 shift_expression: shift_expression RIGHT_OP . additive_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 282 + + +State 214 + + 42 relational_expression: relational_expression LE_OP . shift_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 283 + + +State 215 + + 43 relational_expression: relational_expression GE_OP . shift_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 284 + + +State 216 + + 40 relational_expression: relational_expression '<' . shift_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 285 + + +State 217 + + 41 relational_expression: relational_expression '>' . shift_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 286 + + +State 218 + + 45 equality_expression: equality_expression EQ_OP . relational_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 287 + + +State 219 + + 46 equality_expression: equality_expression NE_OP . relational_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 288 + + +State 220 + + 48 and_expression: and_expression '&' . equality_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 289 + + +State 221 + + 50 exclusive_or_expression: exclusive_or_expression '^' . and_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 290 + + +State 222 + + 52 inclusive_or_expression: inclusive_or_expression '|' . exclusive_or_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 291 + + +State 223 + + 54 logical_and_expression: logical_and_expression AND_OP . inclusive_or_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 292 + + +State 224 + + 56 logical_or_expression: logical_or_expression OR_OP . logical_and_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 293 + + +State 225 + + 58 conditional_expression: logical_or_expression '?' . expression ':' conditional_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 294 + + +State 226 + + 73 expression: expression ',' . assignment_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 295 + + +State 227 + + 191 expression_statement: expression ';' . + + $default reduce using rule 191 (expression_statement) + + +State 228 + + 184 compound_statement: '{' declaration_list '}' . + + $default reduce using rule 184 (compound_statement) + + +State 229 + + 185 compound_statement: '{' declaration_list statement_list . '}' + 189 statement_list: statement_list . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + '}' shift, and go to state 296 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 231 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 230 + + 183 compound_statement: '{' statement_list '}' . + + $default reduce using rule 183 (compound_statement) + + +State 231 + + 189 statement_list: statement_list statement . + + $default reduce using rule 189 (statement_list) + + +State 232 + + 133 direct_declarator: '(' . declarator ')' + 159 direct_abstract_declarator: '(' . abstract_declarator ')' + 164 | '(' . ')' + 165 | '(' . parameter_type_list ')' + + IDENTIFIER shift, and go to state 1 + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 232 + ')' shift, and go to state 297 + '[' shift, and go to state 233 + '*' shift, and go to state 23 + + declaration_specifiers go to state 139 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + declarator go to state 40 + direct_declarator go to state 33 + pointer go to state 235 + parameter_type_list go to state 298 + parameter_list go to state 141 + parameter_declaration go to state 142 + abstract_declarator go to state 299 + direct_abstract_declarator go to state 237 + + +State 233 + + 160 direct_abstract_declarator: '[' . ']' + 161 | '[' . constant_expression ']' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + ']' shift, and go to state 300 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 301 + + +State 234 + + 149 parameter_declaration: declaration_specifiers declarator . + + $default reduce using rule 149 (parameter_declaration) + + +State 235 + + 130 declarator: pointer . direct_declarator + 156 abstract_declarator: pointer . + 158 | pointer . direct_abstract_declarator + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 232 + '[' shift, and go to state 233 + + $default reduce using rule 156 (abstract_declarator) + + direct_declarator go to state 60 + direct_abstract_declarator go to state 302 + + +State 236 + + 150 parameter_declaration: declaration_specifiers abstract_declarator . + + $default reduce using rule 150 (parameter_declaration) + + +State 237 + + 157 abstract_declarator: direct_abstract_declarator . + 162 direct_abstract_declarator: direct_abstract_declarator . '[' ']' + 163 | direct_abstract_declarator . '[' constant_expression ']' + 166 | direct_abstract_declarator . '(' ')' + 167 | direct_abstract_declarator . '(' parameter_type_list ')' + + '(' shift, and go to state 303 + '[' shift, and go to state 304 + + $default reduce using rule 157 (abstract_declarator) + + +State 238 + + 136 direct_declarator: direct_declarator '(' parameter_type_list ')' . + + $default reduce using rule 136 (direct_declarator) + + +State 239 + + 146 parameter_type_list: parameter_list ',' . ELLIPSIS + 148 parameter_list: parameter_list ',' . parameter_declaration + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + ELLIPSIS shift, and go to state 305 + + declaration_specifiers go to state 139 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + parameter_declaration go to state 306 + + +State 240 + + 137 direct_declarator: direct_declarator '(' identifier_list ')' . + + $default reduce using rule 137 (direct_declarator) + + +State 241 + + 153 identifier_list: identifier_list ',' . IDENTIFIER + + IDENTIFIER shift, and go to state 307 + + +State 242 + + 134 direct_declarator: direct_declarator '[' constant_expression ']' . + + $default reduce using rule 134 (direct_declarator) + + +State 243 + + 122 enum_specifier: ENUM IDENTIFIER '{' enumerator_list '}' . + + $default reduce using rule 122 (enum_specifier) + + +State 244 + + 127 enumerator: IDENTIFIER '=' constant_expression . + + $default reduce using rule 127 (enumerator) + + +State 245 + + 125 enumerator_list: enumerator_list ',' enumerator . + + $default reduce using rule 125 (enumerator_list) + + +State 246 + + 171 initializer_list: initializer . + + $default reduce using rule 171 (initializer_list) + + +State 247 + + 169 initializer: '{' initializer_list . '}' + 170 | '{' initializer_list . ',' '}' + 172 initializer_list: initializer_list . ',' initializer + + ',' shift, and go to state 308 + '}' shift, and go to state 309 + + +State 248 + + 104 struct_or_union_specifier: struct_or_union IDENTIFIER '{' struct_declaration_list '}' . + + $default reduce using rule 104 (struct_or_union_specifier) + + +State 249 + + 119 struct_declarator: ':' constant_expression . + + $default reduce using rule 119 (struct_declarator) + + +State 250 + + 117 struct_declarator_list: struct_declarator_list ',' . struct_declarator + + IDENTIFIER shift, and go to state 1 + '(' shift, and go to state 22 + '*' shift, and go to state 23 + ':' shift, and go to state 162 + + struct_declarator go to state 310 + declarator go to state 165 + direct_declarator go to state 33 + pointer go to state 34 + + +State 251 + + 111 struct_declaration: specifier_qualifier_list struct_declarator_list ';' . + + $default reduce using rule 111 (struct_declaration) + + +State 252 + + 120 struct_declarator: declarator ':' . constant_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 311 + + +State 253 + + 179 labeled_statement: IDENTIFIER ':' statement . + + $default reduce using rule 179 (labeled_statement) + + +State 254 + + 20 unary_expression: SIZEOF '(' type_name . ')' + + ')' shift, and go to state 312 + + +State 255 + + 180 labeled_statement: CASE constant_expression ':' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 313 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 256 + + 181 labeled_statement: DEFAULT ':' statement . + + $default reduce using rule 181 (labeled_statement) + + +State 257 + + 73 expression: expression . ',' assignment_expression + 192 selection_statement: IF '(' expression . ')' statement + 193 | IF '(' expression . ')' statement ELSE statement + + ')' shift, and go to state 314 + ',' shift, and go to state 226 + + +State 258 + + 73 expression: expression . ',' assignment_expression + 194 selection_statement: SWITCH '(' expression . ')' statement + + ')' shift, and go to state 315 + ',' shift, and go to state 226 + + +State 259 + + 73 expression: expression . ',' assignment_expression + 195 iteration_statement: WHILE '(' expression . ')' statement + + ')' shift, and go to state 316 + ',' shift, and go to state 226 + + +State 260 + + 196 iteration_statement: DO statement WHILE . '(' expression ')' ';' + + '(' shift, and go to state 317 + + +State 261 + + 197 iteration_statement: FOR '(' expression_statement . expression_statement ')' statement + 198 | FOR '(' expression_statement . expression_statement expression ')' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + expression_statement go to state 318 + + +State 262 + + 199 jump_statement: GOTO IDENTIFIER ';' . + + $default reduce using rule 199 (jump_statement) + + +State 263 + + 203 jump_statement: RETURN expression ';' . + + $default reduce using rule 203 (jump_statement) + + +State 264 + + 4 primary_expression: '(' expression ')' . + + $default reduce using rule 4 (primary_expression) + + +State 265 + + 159 direct_abstract_declarator: '(' . abstract_declarator ')' + 164 | '(' . ')' + 165 | '(' . parameter_type_list ')' + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + '(' shift, and go to state 265 + ')' shift, and go to state 297 + '[' shift, and go to state 233 + '*' shift, and go to state 23 + + declaration_specifiers go to state 139 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + pointer go to state 266 + parameter_type_list go to state 298 + parameter_list go to state 141 + parameter_declaration go to state 142 + abstract_declarator go to state 299 + direct_abstract_declarator go to state 237 + + +State 266 + + 156 abstract_declarator: pointer . + 158 | pointer . direct_abstract_declarator + + '(' shift, and go to state 265 + '[' shift, and go to state 233 + + $default reduce using rule 156 (abstract_declarator) + + direct_abstract_declarator go to state 302 + + +State 267 + + 155 type_name: specifier_qualifier_list abstract_declarator . + + $default reduce using rule 155 (type_name) + + +State 268 + + 28 cast_expression: '(' type_name ')' . cast_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 319 + + +State 269 + + 10 postfix_expression: postfix_expression PTR_OP IDENTIFIER . + + $default reduce using rule 10 (postfix_expression) + + +State 270 + + 7 postfix_expression: postfix_expression '(' ')' . + + $default reduce using rule 7 (postfix_expression) + + +State 271 + + 8 postfix_expression: postfix_expression '(' argument_expression_list . ')' + 14 argument_expression_list: argument_expression_list . ',' assignment_expression + + ')' shift, and go to state 320 + ',' shift, and go to state 321 + + +State 272 + + 13 argument_expression_list: assignment_expression . + + $default reduce using rule 13 (argument_expression_list) + + +State 273 + + 6 postfix_expression: postfix_expression '[' expression . ']' + 73 expression: expression . ',' assignment_expression + + ']' shift, and go to state 322 + ',' shift, and go to state 226 + + +State 274 + + 9 postfix_expression: postfix_expression '.' IDENTIFIER . + + $default reduce using rule 9 (postfix_expression) + + +State 275 + + 60 assignment_expression: unary_expression assignment_operator assignment_expression . + + $default reduce using rule 60 (assignment_expression) + + +State 276 + + 30 multiplicative_expression: multiplicative_expression '*' cast_expression . + + $default reduce using rule 30 (multiplicative_expression) + + +State 277 + + 31 multiplicative_expression: multiplicative_expression '/' cast_expression . + + $default reduce using rule 31 (multiplicative_expression) + + +State 278 + + 32 multiplicative_expression: multiplicative_expression '%' cast_expression . + + $default reduce using rule 32 (multiplicative_expression) + + +State 279 + + 30 multiplicative_expression: multiplicative_expression . '*' cast_expression + 31 | multiplicative_expression . '/' cast_expression + 32 | multiplicative_expression . '%' cast_expression + 34 additive_expression: additive_expression '+' multiplicative_expression . + + '*' shift, and go to state 207 + '/' shift, and go to state 208 + '%' shift, and go to state 209 + + $default reduce using rule 34 (additive_expression) + + +State 280 + + 30 multiplicative_expression: multiplicative_expression . '*' cast_expression + 31 | multiplicative_expression . '/' cast_expression + 32 | multiplicative_expression . '%' cast_expression + 35 additive_expression: additive_expression '-' multiplicative_expression . + + '*' shift, and go to state 207 + '/' shift, and go to state 208 + '%' shift, and go to state 209 + + $default reduce using rule 35 (additive_expression) + + +State 281 + + 34 additive_expression: additive_expression . '+' multiplicative_expression + 35 | additive_expression . '-' multiplicative_expression + 37 shift_expression: shift_expression LEFT_OP additive_expression . + + '+' shift, and go to state 210 + '-' shift, and go to state 211 + + $default reduce using rule 37 (shift_expression) + + +State 282 + + 34 additive_expression: additive_expression . '+' multiplicative_expression + 35 | additive_expression . '-' multiplicative_expression + 38 shift_expression: shift_expression RIGHT_OP additive_expression . + + '+' shift, and go to state 210 + '-' shift, and go to state 211 + + $default reduce using rule 38 (shift_expression) + + +State 283 + + 37 shift_expression: shift_expression . LEFT_OP additive_expression + 38 | shift_expression . RIGHT_OP additive_expression + 42 relational_expression: relational_expression LE_OP shift_expression . + + LEFT_OP shift, and go to state 212 + RIGHT_OP shift, and go to state 213 + + $default reduce using rule 42 (relational_expression) + + +State 284 + + 37 shift_expression: shift_expression . LEFT_OP additive_expression + 38 | shift_expression . RIGHT_OP additive_expression + 43 relational_expression: relational_expression GE_OP shift_expression . + + LEFT_OP shift, and go to state 212 + RIGHT_OP shift, and go to state 213 + + $default reduce using rule 43 (relational_expression) + + +State 285 + + 37 shift_expression: shift_expression . LEFT_OP additive_expression + 38 | shift_expression . RIGHT_OP additive_expression + 40 relational_expression: relational_expression '<' shift_expression . + + LEFT_OP shift, and go to state 212 + RIGHT_OP shift, and go to state 213 + + $default reduce using rule 40 (relational_expression) + + +State 286 + + 37 shift_expression: shift_expression . LEFT_OP additive_expression + 38 | shift_expression . RIGHT_OP additive_expression + 41 relational_expression: relational_expression '>' shift_expression . + + LEFT_OP shift, and go to state 212 + RIGHT_OP shift, and go to state 213 + + $default reduce using rule 41 (relational_expression) + + +State 287 + + 40 relational_expression: relational_expression . '<' shift_expression + 41 | relational_expression . '>' shift_expression + 42 | relational_expression . LE_OP shift_expression + 43 | relational_expression . GE_OP shift_expression + 45 equality_expression: equality_expression EQ_OP relational_expression . + + LE_OP shift, and go to state 214 + GE_OP shift, and go to state 215 + '<' shift, and go to state 216 + '>' shift, and go to state 217 + + $default reduce using rule 45 (equality_expression) + + +State 288 + + 40 relational_expression: relational_expression . '<' shift_expression + 41 | relational_expression . '>' shift_expression + 42 | relational_expression . LE_OP shift_expression + 43 | relational_expression . GE_OP shift_expression + 46 equality_expression: equality_expression NE_OP relational_expression . + + LE_OP shift, and go to state 214 + GE_OP shift, and go to state 215 + '<' shift, and go to state 216 + '>' shift, and go to state 217 + + $default reduce using rule 46 (equality_expression) + + +State 289 + + 45 equality_expression: equality_expression . EQ_OP relational_expression + 46 | equality_expression . NE_OP relational_expression + 48 and_expression: and_expression '&' equality_expression . + + EQ_OP shift, and go to state 218 + NE_OP shift, and go to state 219 + + $default reduce using rule 48 (and_expression) + + +State 290 + + 48 and_expression: and_expression . '&' equality_expression + 50 exclusive_or_expression: exclusive_or_expression '^' and_expression . + + '&' shift, and go to state 220 + + $default reduce using rule 50 (exclusive_or_expression) + + +State 291 + + 50 exclusive_or_expression: exclusive_or_expression . '^' and_expression + 52 inclusive_or_expression: inclusive_or_expression '|' exclusive_or_expression . + + '^' shift, and go to state 221 + + $default reduce using rule 52 (inclusive_or_expression) + + +State 292 + + 52 inclusive_or_expression: inclusive_or_expression . '|' exclusive_or_expression + 54 logical_and_expression: logical_and_expression AND_OP inclusive_or_expression . + + '|' shift, and go to state 222 + + $default reduce using rule 54 (logical_and_expression) + + +State 293 + + 54 logical_and_expression: logical_and_expression . AND_OP inclusive_or_expression + 56 logical_or_expression: logical_or_expression OR_OP logical_and_expression . + + AND_OP shift, and go to state 223 + + $default reduce using rule 56 (logical_or_expression) + + +State 294 + + 58 conditional_expression: logical_or_expression '?' expression . ':' conditional_expression + 73 expression: expression . ',' assignment_expression + + ',' shift, and go to state 226 + ':' shift, and go to state 323 + + +State 295 + + 73 expression: expression ',' assignment_expression . + + $default reduce using rule 73 (expression) + + +State 296 + + 185 compound_statement: '{' declaration_list statement_list '}' . + + $default reduce using rule 185 (compound_statement) + + +State 297 + + 164 direct_abstract_declarator: '(' ')' . + + $default reduce using rule 164 (direct_abstract_declarator) + + +State 298 + + 165 direct_abstract_declarator: '(' parameter_type_list . ')' + + ')' shift, and go to state 324 + + +State 299 + + 159 direct_abstract_declarator: '(' abstract_declarator . ')' + + ')' shift, and go to state 325 + + +State 300 + + 160 direct_abstract_declarator: '[' ']' . + + $default reduce using rule 160 (direct_abstract_declarator) + + +State 301 + + 161 direct_abstract_declarator: '[' constant_expression . ']' + + ']' shift, and go to state 326 + + +State 302 + + 158 abstract_declarator: pointer direct_abstract_declarator . + 162 direct_abstract_declarator: direct_abstract_declarator . '[' ']' + 163 | direct_abstract_declarator . '[' constant_expression ']' + 166 | direct_abstract_declarator . '(' ')' + 167 | direct_abstract_declarator . '(' parameter_type_list ')' + + '(' shift, and go to state 303 + '[' shift, and go to state 304 + + $default reduce using rule 158 (abstract_declarator) + + +State 303 + + 166 direct_abstract_declarator: direct_abstract_declarator '(' . ')' + 167 | direct_abstract_declarator '(' . parameter_type_list ')' + + TYPE_NAME shift, and go to state 2 + TYPEDEF shift, and go to state 3 + EXTERN shift, and go to state 4 + STATIC shift, and go to state 5 + AUTO shift, and go to state 6 + REGISTER shift, and go to state 7 + CHAR shift, and go to state 8 + SHORT shift, and go to state 9 + INT shift, and go to state 10 + LONG shift, and go to state 11 + SIGNED shift, and go to state 12 + UNSIGNED shift, and go to state 13 + FLOAT shift, and go to state 14 + DOUBLE shift, and go to state 15 + CONST shift, and go to state 16 + VOLATILE shift, and go to state 17 + VOID shift, and go to state 18 + STRUCT shift, and go to state 19 + UNION shift, and go to state 20 + ENUM shift, and go to state 21 + ')' shift, and go to state 327 + + declaration_specifiers go to state 139 + storage_class_specifier go to state 26 + type_specifier go to state 27 + struct_or_union_specifier go to state 28 + struct_or_union go to state 29 + enum_specifier go to state 30 + type_qualifier go to state 31 + parameter_type_list go to state 328 + parameter_list go to state 141 + parameter_declaration go to state 142 + + +State 304 + + 162 direct_abstract_declarator: direct_abstract_declarator '[' . ']' + 163 | direct_abstract_declarator '[' . constant_expression ']' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + ']' shift, and go to state 329 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 147 + constant_expression go to state 330 + + +State 305 + + 146 parameter_type_list: parameter_list ',' ELLIPSIS . + + $default reduce using rule 146 (parameter_type_list) + + +State 306 + + 148 parameter_list: parameter_list ',' parameter_declaration . + + $default reduce using rule 148 (parameter_list) + + +State 307 + + 153 identifier_list: identifier_list ',' IDENTIFIER . + + $default reduce using rule 153 (identifier_list) + + +State 308 + + 170 initializer: '{' initializer_list ',' . '}' + 172 initializer_list: initializer_list ',' . initializer + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + '{' shift, and go to state 154 + '}' shift, and go to state 331 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 155 + initializer go to state 332 + + +State 309 + + 169 initializer: '{' initializer_list '}' . + + $default reduce using rule 169 (initializer) + + +State 310 + + 117 struct_declarator_list: struct_declarator_list ',' struct_declarator . + + $default reduce using rule 117 (struct_declarator_list) + + +State 311 + + 120 struct_declarator: declarator ':' constant_expression . + + $default reduce using rule 120 (struct_declarator) + + +State 312 + + 20 unary_expression: SIZEOF '(' type_name ')' . + + $default reduce using rule 20 (unary_expression) + + +State 313 + + 180 labeled_statement: CASE constant_expression ':' statement . + + $default reduce using rule 180 (labeled_statement) + + +State 314 + + 192 selection_statement: IF '(' expression ')' . statement + 193 | IF '(' expression ')' . statement ELSE statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 333 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 315 + + 194 selection_statement: SWITCH '(' expression ')' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 334 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 316 + + 195 iteration_statement: WHILE '(' expression ')' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 335 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 317 + + 196 iteration_statement: DO statement WHILE '(' . expression ')' ';' + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 336 + + +State 318 + + 197 iteration_statement: FOR '(' expression_statement expression_statement . ')' statement + 198 | FOR '(' expression_statement expression_statement . expression ')' statement + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + ')' shift, and go to state 337 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 338 + + +State 319 + + 28 cast_expression: '(' type_name ')' cast_expression . + + $default reduce using rule 28 (cast_expression) + + +State 320 + + 8 postfix_expression: postfix_expression '(' argument_expression_list ')' . + + $default reduce using rule 8 (postfix_expression) + + +State 321 + + 14 argument_expression_list: argument_expression_list ',' . assignment_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 339 + + +State 322 + + 6 postfix_expression: postfix_expression '[' expression ']' . + + $default reduce using rule 6 (postfix_expression) + + +State 323 + + 58 conditional_expression: logical_or_expression '?' expression ':' . conditional_expression + + IDENTIFIER shift, and go to state 144 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 146 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 340 + + +State 324 + + 165 direct_abstract_declarator: '(' parameter_type_list ')' . + + $default reduce using rule 165 (direct_abstract_declarator) + + +State 325 + + 159 direct_abstract_declarator: '(' abstract_declarator ')' . + + $default reduce using rule 159 (direct_abstract_declarator) + + +State 326 + + 161 direct_abstract_declarator: '[' constant_expression ']' . + + $default reduce using rule 161 (direct_abstract_declarator) + + +State 327 + + 166 direct_abstract_declarator: direct_abstract_declarator '(' ')' . + + $default reduce using rule 166 (direct_abstract_declarator) + + +State 328 + + 167 direct_abstract_declarator: direct_abstract_declarator '(' parameter_type_list . ')' + + ')' shift, and go to state 341 + + +State 329 + + 162 direct_abstract_declarator: direct_abstract_declarator '[' ']' . + + $default reduce using rule 162 (direct_abstract_declarator) + + +State 330 + + 163 direct_abstract_declarator: direct_abstract_declarator '[' constant_expression . ']' + + ']' shift, and go to state 342 + + +State 331 + + 170 initializer: '{' initializer_list ',' '}' . + + $default reduce using rule 170 (initializer) + + +State 332 + + 172 initializer_list: initializer_list ',' initializer . + + $default reduce using rule 172 (initializer_list) + + +State 333 + + 192 selection_statement: IF '(' expression ')' statement . + 193 | IF '(' expression ')' statement . ELSE statement + + ELSE shift, and go to state 343 + + ELSE [reduce using rule 192 (selection_statement)] + $default reduce using rule 192 (selection_statement) + + +State 334 + + 194 selection_statement: SWITCH '(' expression ')' statement . + + $default reduce using rule 194 (selection_statement) + + +State 335 + + 195 iteration_statement: WHILE '(' expression ')' statement . + + $default reduce using rule 195 (iteration_statement) + + +State 336 + + 73 expression: expression . ',' assignment_expression + 196 iteration_statement: DO statement WHILE '(' expression . ')' ';' + + ')' shift, and go to state 344 + ',' shift, and go to state 226 + + +State 337 + + 197 iteration_statement: FOR '(' expression_statement expression_statement ')' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 345 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 338 + + 73 expression: expression . ',' assignment_expression + 198 iteration_statement: FOR '(' expression_statement expression_statement expression . ')' statement + + ')' shift, and go to state 346 + ',' shift, and go to state 226 + + +State 339 + + 14 argument_expression_list: argument_expression_list ',' assignment_expression . + + $default reduce using rule 14 (argument_expression_list) + + +State 340 + + 58 conditional_expression: logical_or_expression '?' expression ':' conditional_expression . + + $default reduce using rule 58 (conditional_expression) + + +State 341 + + 167 direct_abstract_declarator: direct_abstract_declarator '(' parameter_type_list ')' . + + $default reduce using rule 167 (direct_abstract_declarator) + + +State 342 + + 163 direct_abstract_declarator: direct_abstract_declarator '[' constant_expression ']' . + + $default reduce using rule 163 (direct_abstract_declarator) + + +State 343 + + 193 selection_statement: IF '(' expression ')' statement ELSE . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 347 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 344 + + 196 iteration_statement: DO statement WHILE '(' expression ')' . ';' + + ';' shift, and go to state 348 + + +State 345 + + 197 iteration_statement: FOR '(' expression_statement expression_statement ')' statement . + + $default reduce using rule 197 (iteration_statement) + + +State 346 + + 198 iteration_statement: FOR '(' expression_statement expression_statement expression ')' . statement + + IDENTIFIER shift, and go to state 81 + CONSTANT shift, and go to state 82 + STRING_LITERAL shift, and go to state 83 + SIZEOF shift, and go to state 84 + INC_OP shift, and go to state 85 + DEC_OP shift, and go to state 86 + CASE shift, and go to state 87 + DEFAULT shift, and go to state 88 + IF shift, and go to state 89 + SWITCH shift, and go to state 90 + WHILE shift, and go to state 91 + DO shift, and go to state 92 + FOR shift, and go to state 93 + GOTO shift, and go to state 94 + CONTINUE shift, and go to state 95 + BREAK shift, and go to state 96 + RETURN shift, and go to state 97 + '(' shift, and go to state 98 + '&' shift, and go to state 99 + '*' shift, and go to state 100 + '+' shift, and go to state 101 + '-' shift, and go to state 102 + '~' shift, and go to state 103 + '!' shift, and go to state 104 + ';' shift, and go to state 105 + '{' shift, and go to state 53 + + primary_expression go to state 107 + postfix_expression go to state 108 + unary_expression go to state 109 + unary_operator go to state 110 + cast_expression go to state 111 + multiplicative_expression go to state 112 + additive_expression go to state 113 + shift_expression go to state 114 + relational_expression go to state 115 + equality_expression go to state 116 + and_expression go to state 117 + exclusive_or_expression go to state 118 + inclusive_or_expression go to state 119 + logical_and_expression go to state 120 + logical_or_expression go to state 121 + conditional_expression go to state 122 + assignment_expression go to state 123 + expression go to state 124 + statement go to state 349 + labeled_statement go to state 126 + compound_statement go to state 127 + expression_statement go to state 130 + selection_statement go to state 131 + iteration_statement go to state 132 + jump_statement go to state 133 + + +State 347 + + 193 selection_statement: IF '(' expression ')' statement ELSE statement . + + $default reduce using rule 193 (selection_statement) + + +State 348 + + 196 iteration_statement: DO statement WHILE '(' expression ')' ';' . + + $default reduce using rule 196 (iteration_statement) + + +State 349 + + 198 iteration_statement: FOR '(' expression_statement expression_statement expression ')' statement . + + $default reduce using rule 198 (iteration_statement) |