📄 c-exp.tab.c
字号:
add_language (&c_language_defn); add_language (&cplus_language_defn);}int yyexca[] ={-1, 1, 0, -1, -2, 0,-1, 47, 272, 66, -2, 130,-1, 131, 272, 95, -2, 126,-1, 180, 272, 67, -2, 68, };# define YYNPROD 131# define YYLAST 1050int yyact[]={ 9, 183, 167, 182, 110, 7, 109, 15, 115, 6, 201, 115, 8, 184, 181, 111, 104, 106, 107, 108, 178, 122, 123, 116, 112, 113, 116, 96, 96, 98, 98, 95, 95, 192, 160, 102, 78, 59, 94, 49, 55, 176, 57, 9, 99, 55, 53, 58, 7, 200, 88, 53, 6, 105, 34, 8, 173, 39, 40, 41, 42, 78, 38, 100, 44, 31, 43, 36, 37, 35, 45, 46, 96, 185, 98, 49, 95, 206, 168, 214, 101, 101, 199, 208, 78, 193, 203, 9, 188, 204, 14, 54, 198, 10, 15, 199, 54, 78, 164, 165, 92, 2, 49, 210, 114, 59, 70, 101, 55, 211, 57, 60, 197, 61, 53, 58, 78, 189, 129, 133, 136, 162, 168, 30, 33, 101, 191, 28, 68, 76, 69, 75, 56, 14, 169, 170, 10, 174, 104, 106, 107, 108, 171, 97, 59, 22, 1, 55, 121, 57, 60, 3, 61, 53, 58, 135, 0, 0, 0, 54, 0, 172, 71, 0, 59, 70, 0, 55, 0, 57, 60, 56, 61, 53, 58, 105, 0, 14, 0, 0, 10, 0, 0, 0, 179, 0, 0, 68, 76, 69, 75, 56, 72, 0, 0, 0, 0, 0, 54, 0, 0, 0, 59, 0, 0, 55, 167, 57, 60, 0, 61, 53, 58, 0, 0, 0, 0, 0, 54, 0, 0, 71, 0, 0, 16, 20, 18, 21, 26, 48, 34, 17, 19, 39, 40, 41, 42, 13, 38, 32, 44, 0, 43, 36, 37, 35, 45, 46, 23, 24, 25, 72, 27, 213, 0, 0, 54, 0, 0, 0, 0, 163, 93, 11, 12, 0, 47, 16, 20, 18, 21, 26, 48, 34, 17, 19, 39, 40, 41, 42, 13, 38, 32, 44, 0, 43, 36, 37, 35, 45, 46, 23, 24, 25, 0, 27, 50, 51, 52, 0, 0, 50, 51, 52, 0, 0, 11, 12, 0, 47, 0, 16, 20, 18, 21, 26, 48, 34, 17, 19, 39, 40, 41, 42, 13, 38, 32, 44, 134, 43, 36, 37, 35, 45, 46, 23, 24, 25, 0, 27, 0, 0, 104, 106, 107, 108, 0, 0, 0, 0, 11, 12, 77, 47, 0, 74, 73, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 0, 0, 0, 0, 0, 59, 70, 0, 55, 0, 57, 60, 105, 61, 53, 58, 59, 70, 0, 55, 0, 57, 60, 0, 61, 53, 58, 0, 68, 0, 69, 75, 56, 62, 63, 0, 50, 51, 52, 68, 0, 69, 0, 56, 77, 0, 0, 74, 73, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 54, 130, 0, 71, 0, 0, 0, 59, 70, 0, 55, 54, 57, 60, 71, 61, 53, 58, 59, 70, 0, 55, 0, 57, 60, 0, 61, 53, 58, 0, 68, 0, 69, 72, 56, 50, 51, 52, 0, 0, 0, 68, 0, 69, 72, 56, 59, 70, 0, 55, 0, 57, 60, 0, 61, 53, 58, 59, 212, 0, 55, 54, 57, 60, 71, 61, 53, 58, 0, 68, 0, 69, 54, 56, 0, 71, 0, 0, 0, 0, 68, 0, 69, 0, 56, 0, 0, 59, 0, 0, 55, 0, 57, 60, 72, 61, 53, 58, 175, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 54, 69, 0, 56, 0, 0, 0, 0, 0, 0, 0, 104, 131, 107, 108, 39, 40, 41, 42, 0, 38, 0, 44, 0, 43, 36, 37, 35, 45, 46, 54, 96, 0, 98, 175, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 59, 0, 0, 55, 0, 57, 60, 0, 61, 53, 58, 0, 0, 0, 0, 177, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 89, 91, 0, 0, 101, 74, 73, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 73, 64, 65, 66, 67, 62, 63, 54, 50, 51, 52, 0, 0, 104, 131, 107, 108, 39, 40, 41, 42, 0, 38, 0, 44, 0, 43, 36, 37, 35, 45, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 64, 65, 66, 67, 62, 63, 161, 50, 51, 52, 0, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 34, 0, 0, 39, 40, 41, 42, 0, 38, 0, 44, 0, 43, 36, 37, 35, 45, 46, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 0, 64, 65, 66, 67, 62, 63, 0, 50, 51, 52, 0, 34, 0, 0, 39, 40, 41, 42, 0, 38, 0, 44, 0, 43, 36, 37, 35, 45, 46, 0, 0, 0, 66, 67, 62, 63, 0, 50, 51, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 166, 0, 202, 0, 0, 0, 0, 34, 0, 0, 39, 40, 41, 42, 0, 38, 207, 44, 4, 43, 36, 37, 35, 45, 46, 79, 81, 82, 83, 84, 85, 86, 87, 103, 0, 0, 0, 0, 0, 0, 117, 118, 119, 120, 0, 124, 0, 0, 0, 0, 0, 80, 29, 128, 132, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 0, 90, 29, 127, 0, 0, 0, 0, 0, 0, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 125, 126, 0, 0, 0, 0, 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 186, 90, 0, 0, 187, 0, 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 194, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 205, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 209, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90 };int yypact[]={ -33, -1000, 31, -1000, 127, 76, -33, -33, -33, -33, -33, -33, -33, 10, -209, -33, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -10, -237, -1000, -246, -1000, -1000, -1000, -272, -263, -252, -246, -246, -246, -246, -255, -246, -209, -209, -1000, -1000, -33, -1000, -1000, 385, 286, -33, -1000, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -209, 5, -238, 5, 5, 5, 5, 5, 5, 5, -33, -4, -11, 57, 58, 80, -1000, 34, 34, 16, 530, -1000, -1000, -73, -246, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -264, -1000, -275, -265, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, 13, -1000, -1000, 127, -1000, -1000, -33, -1000, -1000, -1000, -33, -5, -33, 165, 5, 5, 5, 0, 0, 550, 550, 476, 476, 107, 107, 107, 107, 446, 435, 407, 396, 346, 68, 127, 127, -239, -124, 44, -33, 36, -33, -1000, -1000, -246, -1000, -1000, -1000, -1000, -1000, 483, 71, -1000, 51, 76, -1000, -44, -1000, -1000, -1000, -268, -1000, -209, 5, 5, -1000, 45, 127, -33, 35, 54, 5, 5, -1000, -1000, -1000, -209, -1000, -1000, 21, -1000, -33, 335, 62, 76, -1000, 127, 69, 443, -1000, 38, -1000 };int yypgo[]={ 0, 804, 100, 151, 146, 145, 65, 602, 837, 41, 63, 143, 38, 127, 44, 786, 124, 104, 123, 120, 117 };int yyr1[]={ 0, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 19, 1, 20, 20, 20, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 18, 18, 5, 6, 6, 5, 5, 5, 13, 13, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 14, 14, 10, 10, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 17, 17, 17, 17, 9, 9, 15, 15, 15, 15, 15, 16, 16 };int yyr2[]={ 0, 2, 2, 3, 2, 7, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 7, 9, 7, 7, 9, 9, 1, 11, 0, 3, 7, 9, 9, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 11, 7, 7, 3, 3, 3, 3, 3, 3, 2, 3, 3, 3, 9, 3, 3, 3, 7, 7, 7, 9, 2, 5, 3, 2, 5, 3, 5, 3, 5, 2, 7, 5, 3, 5, 3, 5, 7, 5, 7, 2, 7, 13, 17, 19, 3, 3, 3, 3, 5, 7, 5, 7, 7, 9, 5, 7, 5, 5, 5, 5, 5, 3, 5, 3, 11, 5, 5, 2, 3, 3, 3, 3, 7, 3, 3, 3, 3, 3, 2, 2 };int yychk[]={ -1000, -4, -2, -3, -1, -7, 42, 38, 45, 33, 126, 296, 297, 270, 123, 40, 257, 264, 259, 265, 258, 260, -5, 281, 282, 283, 261, 285, -13, -8, -18, -6, 272, -16, 263, 278, 276, 277, 271, 266, 267, 268, 269, 275, 273, 279, 280, 299, 262, 44, 296, 297, 298, 46, 91, 40, 64, 42, 47, 37, 43, 45, 293, 294, 289, 290, 291, 292, 60, 62, 38, 94, 124, 288, 287, 63, 61, 284, 40, -1, -8, -1, -1, -1, -1, -1, -1, -1, 40, -7, -8, -7, -2, 272, -12, 42, 38, -11, 40, -14, -10, 91, 272, -15, 262, 299, 263, 264, 265, 278, 276, 278, 276, 277, -17, 263, 278, -15, -15, -15, -15, -17, 276, 277, -15, -8, -8, -1, -15, -6, 42, 263, -15, -6, 42, -2, -19, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -8, 272, -7, 125, 272, 41, 41, -15, 126, 42, -12, -12, -14, -10, 40, -12, 41, -9, -7, 93, 257, -15, 278, 278, 276, 278, 60, -1, -1, 93, -20, -1, 58, 272, 41, -1, -1, -15, 41, 41, 44, 93, 278, -7, 41, 44, -1, 42, -7, 62, -1, 41, 40, 41, -9, 41 };int yydef[]={ 0, -2, 1, 2, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 64, 65, 90, 74, 0, 71, 0, 73, 95, 96, 97, 98, 112, 0, 0, 0, 0, 114, 0, 0, 0, -2, 129, 0, 13, 14, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 7, 8, 9, 10, 11, 12, 15, 0, 0, 74, 0, 0, 0, 75, 76, 78, 80, 0, 83, 85, 0, 0, 72, 124, 125, 126, 127, 128, 99, 101, 105, 120, 121, 111, 118, 119, 107, 108, 109, 110, 113, 120, 121, 0, 116, 117, 5, 16, 17, 0, -2, 19, 20, 0, 0, 25, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 51, 52, 0, 0, 0, 0, 0, 0, 30, 69, 0, 91, 77, 79, 82, 84, 0, 0, 88, 0, 122, 86, 0, -2, 102, 100, 103, 106, 0, 18, 21, 22, 0, 26, 0, 0, 63, 28, 29, 70, 81, 89, 0, 87, 104, 0, 24, 0, 50, 0, 123, 115, 27, 92, 0, 93, 0, 94 };typedef struct { char *t_name; int t_val; } yytoktype;#ifndef YYDEBUG# define YYDEBUG 0 /* don't allow debugging */#endif#if YYDEBUGyytoktype yytoks[] ={ "INT", 257, "CHAR", 258, "UINT", 259, "FLOAT", 260, "STRING", 261, "NAME", 262, "TYPENAME", 263, "NAME_OR_INT", 264, "NAME_OR_UINT", 265, "STRUCT", 266, "CLASS", 267, "UNION", 268, "ENUM", 269, "SIZEOF", 270, "UNSIGNED", 271, "COLONCOLON", 272, "TEMPLATE", 273, "ERROR", 274, "SIGNED_KEYWORD", 275, "LONG", 276, "SHORT", 277, "INT_KEYWORD", 278, "CONST_KEYWORD", 279, "VOLATILE_KEYWORD", 280, "LAST", 281, "REGNAME", 282, "VARIABLE", 283, "ASSIGN_MODIFY", 284, "THIS", 285, ",", 44, "ABOVE_COMMA", 286, "=", 61, "?", 63, "OROR", 287, "ANDAND", 288, "|", 124, "^", 94, "&", 38, "EQUAL", 289, "NOTEQUAL", 290, "<", 60, ">", 62, "LEQ", 291, "GEQ", 292, "LSH", 293, "RSH", 294, "@", 64, "+", 43, "-", 45, "*", 42, "/", 47, "%", 37, "UNARY", 295, "INCREMENT", 296, "DECREMENT", 297, "ARROW", 298, ".", 46, "[", 91, "(", 40, "BLOCKNAME", 299, "-unknown-", -1 /* ends search */};char * yyreds[] ={ "-no such reduction-", "start : exp1", "start : type_exp", "type_exp : type", "exp1 : exp", "exp1 : exp1 ',' exp", "exp : '*' exp", "exp : '&' exp", "exp : '-' exp", "exp : '!' exp", "exp : '~' exp", "exp : INCREMENT exp", "exp : DECREMENT exp", "exp : exp INCREMENT", "exp : exp DECREMENT", "exp : SIZEOF exp", "exp : exp ARROW name", "exp : exp ARROW qualified_name", "exp : exp ARROW '*' exp", "exp : exp '.' name", "exp : exp '.' qualified_name", "exp : exp '.' '*' exp", "exp : exp '[' exp1 ']'", "exp : exp '('", "exp : exp '(' arglist ')'", "arglist : /* empty */", "arglist : exp", "arglist : arglist ',' exp", "exp : '{' type '}' exp", "exp : '(' type ')' exp", "exp : '(' exp1 ')'", "exp : exp '@' exp", "exp : exp '*' exp", "exp : exp '/' exp", "exp : exp '%' exp", "exp : exp '+' exp", "exp : exp '-' exp", "exp : exp LSH exp", "exp : exp RSH exp", "exp : exp EQUAL exp", "exp : exp NOTEQUAL exp", "exp : exp LEQ exp", "exp : exp GEQ exp", "exp : exp '<' exp", "exp : exp '>' exp", "exp : exp '&' exp", "exp : exp '^' exp", "exp : exp '|' exp", "exp : exp ANDAND exp", "exp : exp OROR exp", "exp : exp '?' exp ':' exp", "exp : exp '=' exp", "exp : exp ASSIGN_MODIFY exp", "exp : INT", "exp : NAME_OR_INT", "exp : UINT", "exp : NAME_OR_UINT", "exp : CHAR", "exp : FLOAT", "exp : variable", "exp : LAST", "exp : REGNAME", "exp : VARIABLE", "exp : SIZEOF '(' type ')'", "exp : STRING", "exp : THIS", "block : BLOCKNAME", "block : block COLONCOLON name", "variable : block COLONCOLON name", "qualified_name : typebase COLONCOLON name", "qualified_name : typebase COLONCOLON '~' name", "variable : qualified_name", "variable : COLONCOLON name", "variable : name_not_typename", "ptype : typebase", "ptype : typebase abs_decl", "abs_decl : '*'", "abs_decl : '*' abs_decl", "abs_decl : '&'", "abs_decl : '&' abs_decl", "abs_decl : direct_abs_decl", "direct_abs_decl : '(' abs_decl ')'", "direct_abs_decl : direct_abs_decl array_mod", "direct_abs_decl : array_mod", "direct_abs_decl : direct_abs_decl func_mod", "direct_abs_decl : func_mod", "array_mod : '[' ']'", "array_mod : '[' INT ']'", "func_mod : '(' ')'", "func_mod : '(' nonempty_typelist ')'", "type : ptype", "type : typebase COLONCOLON '*'", "type : type '(' typebase COLONCOLON '*' ')'", "type : type '(' typebase COLONCOLON '*' ')' '(' ')'", "type : type '(' typebase COLONCOLON '*' ')' '(' nonempty_typelist ')'", "typebase : TYPENAME", "typebase : INT_KEYWORD", "typebase : LONG", "typebase : SHORT", "typebase : LONG INT_KEYWORD", "typebase : UNSIGNED LONG INT_KEYWORD", "typebase : LONG LONG", "typebase : LONG LONG INT_KEYWORD", "typebase : UNSIGNED LONG LONG", "typebase : UNSIGNED LONG LONG INT_KEYWORD", "typebase : SHORT INT_KEYWORD", "typebase : UNSIGNED SHORT INT_KEYWORD", "typebase : STRUCT name", "typebase : CLASS name", "typebase : UNION name", "typebase : ENUM name", "typebase : UNSIGNED typename", "typebase : UNSIGNED", "typebase : SIGNED_KEYWORD typename", "typebase : SIGNED_KEYWORD", "typebase : TEMPLATE name '<' type '>'", "typebase : CONST_KEYWORD typebase", "typebase : VOLATILE_KEYWORD typebase", "typename : TYPENAME", "typename : INT_KEYWORD", "typename : LONG", "typename : SHORT", "nonempty_typelist : type", "nonempty_typelist : nonempty_typelist ',' type", "name : NAME", "name : BLOCKNAME", "name : TYPENAME", "name : NAME_OR_INT", "name : NAME_OR_UINT", "name_not_typename : NAME", "name_not_typename : BLOCKNAME",};#endif /* YYDEBUG */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -