📄 fincyacc.output
字号:
State 95 contains 1 reduce/reduce conflict.State 245 contains 1 shift/reduce conflict.Grammarrule 1 input -> /* empty */rule 2 input -> input declrule 3 decl -> decl_structrule 4 decl -> decl_globalrule 5 decl -> decl_functionrule 6 decl -> decl_importrule 7 decl -> decl_pkgrule 8 decl -> errorrule 9 decl_global -> decl_variablerule 10 decl_local -> decl_variablerule 11 decl_variable -> type declarator_list ';'rule 12 decl_variable -> type identifier '[' V_INT ']'rule 13 decl_variable -> type identifier '[' ']'rule 14 decl_variable -> type errorrule 15 decl_variable -> type declarator_list errorrule 16 declarator_list -> declarator_list ',' declaratorrule 17 declarator_list -> declaratorrule 18 declarator -> identifierrule 19 declarator -> identifier ASSIGN expr_assignrule 20 @1 -> /* empty */rule 21 decl_struct -> STRUCT identifier @1 '{' decl_field_list '}' ';'rule 22 decl_struct -> STRUCT errorrule 23 decl_field_list -> decl_field_declaratorrule 24 decl_field_list -> decl_field_list decl_field_declaratorrule 25 decl_field_declarator -> type struct_declarator_list ';'rule 26 decl_field_declarator -> type identifier '[' V_INT ']'rule 27 decl_field_declarator -> type identifier '[' ']'rule 28 struct_declarator_list -> struct_declarator_list ',' struct_declaratorrule 29 struct_declarator_list -> struct_declaratorrule 30 struct_declarator -> identifierrule 31 @2 -> /* empty */rule 32 decl_function -> type identifier @2 '(' decl_param_type_list ')' statement_blockrule 33 decl_param_type_list -> decl_param_listrule 34 decl_param_type_list -> decl_param_list ',' OPT_PARAMrule 35 decl_param_list -> /* empty */rule 36 decl_param_list -> decl_paramrule 37 decl_param_list -> decl_param_list ',' decl_paramrule 38 decl_param -> type identifierrule 39 decl_param -> type identifier '[' ']'rule 40 decl_param -> type identifier '[' errorrule 41 decl_param -> type identifier '[' V_INT ']'rule 42 decl_param -> type identifier '[' V_INT errorrule 43 decl_import -> IMPORT V_STRING ';'rule 44 decl_import -> IMPORT V_STRING errorrule 45 @3 -> /* empty */rule 46 decl_pkg -> PACKAGE V_STRING @3 '{' decl_pkg_func_list '}' ';'rule 47 decl_pkg_func_list -> decl_pkg_funcrule 48 decl_pkg_func_list -> decl_pkg_func_list decl_pkg_funcrule 49 @4 -> /* empty */rule 50 decl_pkg_func -> type identifier @4 '(' decl_param_type_list ')' ';'rule 51 type -> type_listrule 52 type -> identifierrule 53 type_list -> type_basicrule 54 type_list -> type_list type_basicrule 55 type_basic -> VOIDrule 56 type_basic -> CHARrule 57 type_basic -> SHORTrule 58 type_basic -> INTrule 59 type_basic -> STRINGrule 60 type_basic -> POINTERrule 61 type_basic -> FLOATrule 62 type_basic -> DOUBLErule 63 type_basic -> BOOLrule 64 type_basic -> STATICrule 65 type_basic -> UNSIGNEDrule 66 type_basic -> NATIVErule 67 identifier -> IDENTIFIERrule 68 literal -> V_STRINGrule 69 literal -> V_INTrule 70 literal -> V_FLOATrule 71 literal -> V_TRUErule 72 literal -> V_FALSErule 73 literal -> V_NULLrule 74 expr -> expr_assignrule 75 expr -> expr ',' expr_assignrule 76 expr_assign -> expr_conditionrule 77 expr_assign -> expr_unary ASSIGN expr_assignrule 78 expr_condition -> expr_logic_orrule 79 expr_condition -> expr_logic_or '?' expr ':' expr_conditionrule 80 expr_logic_or -> expr_logic_andrule 81 expr_logic_or -> expr_logic_or '|' '|' expr_logic_andrule 82 expr_logic_and -> expr_equalityrule 83 expr_logic_and -> expr_logic_and '&' '&' expr_equalityrule 84 expr_equality -> expr_relationalrule 85 expr_equality -> expr_equality EQ expr_relationalrule 86 expr_equality -> expr_equality NE expr_relationalrule 87 expr_relational -> expr_additiverule 88 expr_relational -> expr_relational '<' expr_additiverule 89 expr_relational -> expr_relational '>' expr_additiverule 90 expr_relational -> expr_relational LE expr_additiverule 91 expr_relational -> expr_relational GE expr_additiverule 92 expr_additive -> expr_multiplicativerule 93 expr_additive -> expr_additive SUB expr_multiplicativerule 94 expr_additive -> expr_additive PLUS expr_multiplicativerule 95 expr_multiplicative -> expr_castrule 96 expr_multiplicative -> expr_multiplicative '*' expr_castrule 97 expr_multiplicative -> expr_multiplicative '/' expr_castrule 98 expr_cast -> expr_unaryrule 99 expr_cast -> '(' type ')' expr_castrule 100 expr_unary -> expr_postfixrule 101 expr_unary -> PLUS expr_castrule 102 expr_unary -> SUB expr_castrule 103 expr_unary -> ADDR_OF '(' expr_unary ')'rule 104 expr_unary -> CONTENT_OF '(' expr_unary ')'rule 105 expr_unary -> ADDR_OF errorrule 106 expr_unary -> ADDR_OF '(' errorrule 107 expr_unary -> ADDR_OF '(' expr_unary errorrule 108 expr_unary -> CONTENT_OF errorrule 109 expr_unary -> CONTENT_OF '(' errorrule 110 expr_unary -> CONTENT_OF '(' expr_unary errorrule 111 expr_postfix -> expr_primaryrule 112 expr_postfix -> expr_postfix '[' expr ']'rule 113 expr_postfix -> expr_postfix INCrule 114 expr_postfix -> expr_postfix DECrule 115 expr_postfix -> expr_postfix '.' identifierrule 116 @5 -> /* empty */rule 117 expr_postfix -> expr_postfix @5 '(' param_list ')'rule 118 expr_primary -> literalrule 119 expr_primary -> '(' expr ')'rule 120 expr_primary -> identifierrule 121 param_list -> /* empty */rule 122 param_list -> expr_assignrule 123 param_list -> param_list ',' expr_assignrule 124 statement -> decl_localrule 125 statement -> statement_blockrule 126 statement -> statement_noderule 127 statement -> statement_returnrule 128 statement -> statement_forrule 129 statement -> statement_whilerule 130 statement -> statement_ifrule 131 statement -> statement_continuerule 132 statement -> statement_breakrule 133 statement_in_block -> decl_localrule 134 statement_in_block -> statement_blockrule 135 statement_in_block -> statement_noderule 136 statement_in_block -> statement_returnrule 137 statement_in_block -> statement_forrule 138 statement_in_block -> statement_whilerule 139 statement_in_block -> statement_ifrule 140 @6 -> /* empty */rule 141 statement_block -> '{' @6 statement_list '}'rule 142 statement_list -> statement_in_blockrule 143 statement_list -> statement_list statement_in_blockrule 144 statement_node -> ';'rule 145 statement_node -> expr ';'rule 146 statement_return -> RETURN expr ';'rule 147 statement_return -> RETURN error ';'rule 148 statement_return -> RETURN expr errorrule 149 statement_for -> FOR '(' statement_node statement_node expr ')' statementrule 150 statement_for -> FOR '(' expr ';' errorrule 151 statement_for -> FOR errorrule 152 statement_while -> WHILE '(' expr ')' statementrule 153 statement_while -> WHILE '(' errorrule 154 statement_while -> WHILE errorrule 155 statement_if -> IF '(' expr ')' statement statement_if_elserule 156 statement_if -> IF '(' errorrule 157 statement_if -> IF errorrule 158 statement_if_else -> /* empty */rule 159 statement_if_else -> ELSE statementrule 160 statement_continue -> CONTINUE ';'rule 161 statement_continue -> CONTINUE errorrule 162 statement_break -> BREAK ';'rule 163 statement_break -> BREAK errorTerminals, with rules where they appear$ (-1)'&' (38) 83'(' (40) 32 50 99 103 104 106 107 109 110 117 119 149 150 152 153 155 156')' (41) 32 50 99 103 104 117 119 149 152 155'*' (42) 96',' (44) 16 28 34 37 75 123'.' (46) 115'/' (47) 97':' (58) 79';' (59) 11 21 25 43 46 50 144 145 146 147 150 160 162'<' (60) 88'>' (62) 89'?' (63) 79'[' (91) 12 13 26 27 39 40 41 42 112']' (93) 12 13 26 27 39 41 112'{' (123) 21 46 141'|' (124) 81'}' (125) 21 46 141error (256) 8 14 15 22 40 42 44 105 106 107 108 109 110 147 148 150 151 153 154 156 157 161 163IF (257) 155 156 157ELSE (258) 159RETURN (259) 146 147 148WHILE (260) 152 153 154FOR (261) 149 150 151CONTINUE (262) 160 161BREAK (263) 162 163V_TRUE (264) 71V_FALSE (265) 72V_NULL (266) 73IMPORT (267) 43 44OPT_PARAM (268) 34ADDR_OF (269) 103 105 106 107CONTENT_OF (270) 104 108 109 110VOID (271) 55CHAR (272) 56SHORT (273) 57INT (274) 58FLOAT (275) 61DOUBLE (276) 62POINTER (277) 60STRING (278) 59BOOL (279) 63STRUCT (280) 21 22NATIVE (281) 66STATIC (282) 64UNSIGNED (283) 65PACKAGE (284) 46PLUS (285) 94 101INC (286) 113SUB (287) 93 102DEC (288) 114ASSIGN (289) 19 77EQ (290) 85NE (291) 86LE (292) 90GE (293) 91IDENTIFIER (294) 67V_INT (295) 12 26 41 42 69V_FLOAT (296) 70V_STRING (297) 43 44 46 68Nonterminals, with rules where they appearinput (61) on left: 1 2, on right: 2decl (62) on left: 3 4 5 6 7 8, on right: 2decl_global (63) on left: 9, on right: 4decl_local (64) on left: 10, on right: 124 133decl_variable (65) on left: 11 12 13 14 15, on right: 9 10declarator_list (66) on left: 16 17, on right: 11 15 16declarator (67) on left: 18 19, on right: 16 17decl_struct (68) on left: 21 22, on right: 3@1 (69) on left: 20, on right: 21decl_field_list (70) on left: 23 24, on right: 21 24decl_field_declarator (71) on left: 25 26 27, on right: 23 24struct_declarator_list (72) on left: 28 29, on right: 25 28struct_declarator (73) on left: 30, on right: 28 29decl_function (74) on left: 32, on right: 5@2 (75) on left: 31, on right: 32decl_param_type_list (76) on left: 33 34, on right: 32 50decl_param_list (77) on left: 35 36 37, on right: 33 34 37decl_param (78) on left: 38 39 40 41 42, on right: 36 37decl_import (79) on left: 43 44, on right: 6decl_pkg (80) on left: 46, on right: 7@3 (81) on left: 45, on right: 46decl_pkg_func_list (82) on left: 47 48, on right: 46 48decl_pkg_func (83) on left: 50, on right: 47 48@4 (84) on left: 49, on right: 50type (85) on left: 51 52, on right: 11 12 13 14 15 25 26 27 32 38 39 40 41 42 50 99type_list (86) on left: 53 54, on right: 51 54type_basic (87) on left: 55 56 57 58 59 60 61 62 63 64 65 66, on right: 53 54identifier (88) on left: 67, on right: 12 13 18 19 21 26 27 30 32 38 39 40 41 42 50 52 115 120literal (89) on left: 68 69 70 71 72 73, on right: 118expr (90) on left: 74 75, on right: 75 79 112 119 145 146 148 149 150 152 155expr_assign (91) on left: 76 77, on right: 19 74 75 77 122 123expr_condition (92) on left: 78 79, on right: 76 79expr_logic_or (93) on left: 80 81, on right: 78 79 81expr_logic_and (94) on left: 82 83, on right: 80 81 83expr_equality (95) on left: 84 85 86, on right: 82 83 85 86expr_relational (96) on left: 87 88 89 90 91, on right: 84 85 86 88 89 90 91expr_additive (97) on left: 92 93 94, on right: 87 88 89 90 91 93 94expr_multiplicative (98) on left: 95 96 97, on right: 92 93 94 96 97expr_cast (99) on left: 98 99, on right: 95 96 97 99 101 102expr_unary (100) on left: 100 101 102 103 104 105 106 107 108 109 110, on right: 77 98 103 104 107 110expr_postfix (101) on left: 111 112 113 114 115 117, on right: 100 112 113 114 115 117@5 (102) on left: 116, on right: 117expr_primary (103) on left: 118 119 120, on right: 111param_list (104) on left: 121 122 123, on right: 117 123statement (105) on left: 124 125 126 127 128 129 130 131 132, on right: 149 152 155 159statement_in_block (106) on left: 133 134 135 136 137 138 139, on right: 142 143statement_block (107) on left: 141, on right: 32 125 134@6 (108) on left: 140, on right: 141statement_list (109) on left: 142 143, on right: 141 143statement_node (110) on left: 144 145, on right: 126 135 149statement_return (111) on left: 146 147 148, on right: 127 136statement_for (112) on left: 149 150 151, on right: 128 137statement_while (113) on left: 152 153 154, on right: 129 138statement_if (114) on left: 155 156 157, on right: 130 139statement_if_else (115) on left: 158 159, on right: 155statement_continue (116) on left: 160 161, on right: 131statement_break (117) on left: 162 163, on right: 132state 0 $default reduce using rule 1 (input) input go to state 1state 1 input -> input . decl (rule 2) $ go to state 266 error shift, and go to state 2 IMPORT shift, and go to state 3 VOID shift, and go to state 4 CHAR shift, and go to state 5 SHORT shift, and go to state 6 INT shift, and go to state 7 FLOAT shift, and go to state 8 DOUBLE shift, and go to state 9 POINTER shift, and go to state 10 STRING shift, and go to state 11 BOOL shift, and go to state 12 STRUCT shift, and go to state 13 NATIVE shift, and go to state 14 STATIC shift, and go to state 15 UNSIGNED shift, and go to state 16 PACKAGE shift, and go to state 17 IDENTIFIER shift, and go to state 18 decl go to state 19 decl_global go to state 20 decl_variable go to state 21 decl_struct go to state 22 decl_function go to state 23 decl_import go to state 24 decl_pkg go to state 25 type go to state 26 type_list go to state 27 type_basic go to state 28 identifier go to state 29state 2 decl -> error . (rule 8) $default reduce using rule 8 (decl)state 3 decl_import -> IMPORT . V_STRING ';' (rule 43) decl_import -> IMPORT . V_STRING error (rule 44) V_STRING shift, and go to state 30state 4 type_basic -> VOID . (rule 55) $default reduce using rule 55 (type_basic)state 5 type_basic -> CHAR . (rule 56) $default reduce using rule 56 (type_basic)state 6 type_basic -> SHORT . (rule 57) $default reduce using rule 57 (type_basic)state 7 type_basic -> INT . (rule 58) $default reduce using rule 58 (type_basic)state 8 type_basic -> FLOAT . (rule 61) $default reduce using rule 61 (type_basic)state 9 type_basic -> DOUBLE . (rule 62) $default reduce using rule 62 (type_basic)state 10 type_basic -> POINTER . (rule 60) $default reduce using rule 60 (type_basic)state 11 type_basic -> STRING . (rule 59) $default reduce using rule 59 (type_basic)state 12 type_basic -> BOOL . (rule 63) $default reduce using rule 63 (type_basic)state 13 decl_struct -> STRUCT . identifier @1 '{' decl_field_list '}' ';' (rule 21) decl_struct -> STRUCT . error (rule 22) error shift, and go to state 31 IDENTIFIER shift, and go to state 18 identifier go to state 32state 14 type_basic -> NATIVE . (rule 66) $default reduce using rule 66 (type_basic)state 15 type_basic -> STATIC . (rule 64) $default reduce using rule 64 (type_basic)state 16 type_basic -> UNSIGNED . (rule 65) $default reduce using rule 65 (type_basic)state 17 decl_pkg -> PACKAGE . V_STRING @3 '{' decl_pkg_func_list '}' ';' (rule 46)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -