?? y.tab.c
字號:
/* The size of an array large to enough to hold all stacks, each with N elements. */# define YYSTACK_BYTES(N) \ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM)/* Copy COUNT objects from FROM to TO. The source and destination do not overlap. */# ifndef YYCOPY# if defined __GNUC__ && 1 < __GNUC__# define YYCOPY(To, From, Count) \ __builtin_memcpy (To, From, (Count) * sizeof (*(From)))# else# define YYCOPY(To, From, Count) \ do \ { \ YYSIZE_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (To)[yyi] = (From)[yyi]; \ } \ while (YYID (0))# endif# endif/* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack. */# define YYSTACK_RELOCATE(Stack) \ do \ { \ YYSIZE_T yynewbytes; \ YYCOPY (&yyptr->Stack, Stack, yysize); \ Stack = &yyptr->Stack; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ while (YYID (0))#endif/* YYFINAL -- State number of the termination state. */#define YYFINAL 116/* YYLAST -- Last index in YYTABLE. */#define YYLAST 659/* YYNTOKENS -- Number of terminals. */#define YYNTOKENS 61/* YYNNTS -- Number of nonterminals. */#define YYNNTS 38/* YYNRULES -- Number of rules. */#define YYNRULES 167/* YYNRULES -- Number of states. */#define YYNSTATES 342/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */#define YYUNDEFTOK 2#define YYMAXUTOK 304#define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */static const yytype_uint8 yytranslate[] ={ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 51, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 49, 2, 59, 60, 2, 2, 2, 56, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 50, 55, 2, 54, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 57, 53, 58, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 52};#if YYDEBUG/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in YYRHS. */static const yytype_uint16 yyprhs[] ={ 0, 0, 3, 6, 8, 11, 13, 15, 18, 21, 24, 28, 32, 36, 40, 43, 47, 51, 54, 58, 62, 65, 69, 73, 76, 80, 84, 87, 91, 95, 98, 102, 106, 109, 113, 117, 120, 124, 128, 131, 135, 139, 142, 146, 150, 153, 157, 161, 164, 168, 172, 175, 178, 180, 182, 184, 186, 189, 191, 194, 196, 198, 201, 203, 205, 207, 209, 215, 221, 223, 225, 227, 229, 231, 233, 235, 242, 249, 257, 265, 276, 287, 297, 307, 315, 323, 329, 335, 342, 349, 357, 365, 376, 387, 394, 402, 409, 415, 422, 427, 429, 432, 436, 439, 443, 447, 452, 455, 461, 469, 476, 480, 482, 486, 491, 498, 504, 506, 509, 514, 519, 525, 531, 534, 538, 541, 545, 548, 552, 554, 558, 561, 563, 566, 570, 574, 578, 583, 588, 593, 598, 603, 605, 607, 609, 611, 613, 615, 616, 619, 621, 624, 627, 632, 637, 641, 645, 647, 649, 652, 655, 658, 661, 666, 671, 673, 675, 678};/* YYRHS -- A `-1'-separated list of the rules' RHS. */static const yytype_int8 yyrhs[] ={ 62, 0, -1, 94, 91, -1, 51, -1, 1, 51, -1, 52, -1, 26, -1, 63, 26, -1, 54, 26, -1, 55, 26, -1, 29, 54, 26, -1, 29, 55, 26, -1, 28, 54, 26, -1, 28, 55, 26, -1, 35, 26, -1, 29, 35, 26, -1, 28, 35, 26, -1, 47, 26, -1, 29, 47, 26, -1, 28, 47, 26, -1, 46, 26, -1, 29, 46, 26, -1, 28, 46, 26, -1, 36, 26, -1, 29, 36, 26, -1, 28, 36, 26, -1, 43, 26, -1, 29, 43, 26, -1, 28, 43, 26, -1, 38, 26, -1, 29, 38, 26, -1, 28, 38, 26, -1, 37, 29, -1, 29, 37, 29, -1, 28, 37, 29, -1, 39, 29, -1, 29, 39, 29, -1, 28, 39, 29, -1, 37, 26, -1, 29, 37, 26, -1, 28, 37, 26, -1, 39, 26, -1, 29, 39, 26, -1, 28, 39, 26, -1, 39, 56, -1, 29, 39, 56, -1, 28, 39, 56, -1, 37, 56, -1, 29, 37, 56, -1, 28, 37, 56, -1, 44, 26, -1, 45, 26, -1, 26, -1, 27, -1, 64, -1, 64, -1, 66, 64, -1, 65, -1, 67, 65, -1, 67, -1, 69, -1, 69, 66, -1, 74, -1, 77, -1, 70, -1, 73, -1, 12, 88, 14, 88, 15, -1, 13, 88, 14, 88, 15, -1, 72, -1, 78, -1, 76, -1, 79, -1, 80, -1, 81, -1, 71, -1, 10, 26, 93, 14, 88, 15, -1, 10, 26, 93, 57, 88, 58, -1, 10, 26, 50, 93, 14, 88, 15, -1, 10, 26, 50, 93, 57, 88, 58, -1, 10, 26, 93, 21, 63, 92, 93, 14, 88, 15, -1, 10, 26, 93, 21, 63, 92, 93, 57, 88, 58, -1, 10, 26, 93, 21, 92, 93, 14, 88, 15, -1, 10, 26, 93, 21, 92, 93, 57, 88, 58, -1, 10, 31, 92, 93, 14, 88, 15, -1, 10, 31, 92, 93, 57, 88, 58, -1, 10, 31, 14, 88, 15, -1, 10, 31, 57, 88, 58, -1, 11, 26, 93, 14, 87, 15, -1, 11, 26, 93, 57, 87, 58, -1, 11, 26, 50, 93, 14, 87, 15, -1, 11, 26, 50, 93, 57, 87, 58, -1, 11, 26, 93, 21, 63, 92, 93, 14, 87, 15, -1, 11, 26, 93, 21, 63, 92, 93, 57, 87, 58, -1, 8, 26, 93, 21, 93, 9, -1, 8, 26, 93, 21, 85, 93, 9, -1, 8, 26, 93, 21, 83, 9, -1, 26, 59, 60, 93, 75, -1, 16, 26, 59, 60, 93, 75, -1, 16, 26, 93, 75, -1, 69, -1, 69, 66, -1, 59, 88, 60, -1, 17, 69, -1, 17, 69, 66, -1, 17, 26, 69, -1, 17, 26, 69, 66, -1, 17, 67, -1, 3, 88, 4, 88, 7, -1, 3, 88, 4, 88, 5, 88, 7, -1, 3, 88, 4, 88, 82, 7, -1, 57, 88, 58, -1, 30, -1, 18, 32, 19, -1, 6, 88, 4, 88, -1, 6, 88, 4, 88, 5, 88, -1, 6, 88, 4, 88, 82, -1, 84, -1, 85, 84, -1, 93, 86, 60, 88, -1, 93, 86, 60, 93, -1, 93, 59, 86, 60, 88, -1, 93, 59, 86, 60, 93, -1, 84, 40, -1, 85, 84, 40, -1, 84, 41, -1, 85, 84, 41, -1, 84, 42, -1, 85, 84, 42, -1, 26, -1, 86, 53, 26, -1, 93, 89, -1, 87, -1, 93, 90, -1, 90, 51, 93, -1, 90, 49, 93, -1, 90, 50, 93, -1, 90, 33, 93, 90, -1, 90, 34, 93, 90, -1, 90, 49, 93, 90, -1, 90, 50, 93, 90, -1, 90, 51, 93, 90, -1, 96, -1, 51, -1, 52, -1, 51, -1, 50, -1, 52, -1, -1, 93, 51, -1, 95, -1, 95, 49, -1, 95, 50, -1, 95, 33, 93, 95, -1, 95, 34, 93, 95, -1, 95, 49, 95, -1, 95, 50, 95, -1, 96, -1, 97, -1, 22, 96, -1, 98, 96, -1, 98, 92, -1, 22, 92, -1, 97, 53, 93, 97, -1, 97, 48, 93, 97, -1, 68, -1, 23, -1, 23, 24, -1, 23, 24, 25, -1};/* YYRLINE[YYN] -- source line where rule number YYN was defined. */static const yytype_uint16 yyrline[] ={ 0, 376, 376, 387, 396, 411, 421, 423, 427, 433, 439, 445, 451, 457, 463, 469, 475, 481, 487, 493, 499, 505, 511, 517, 524, 531, 538, 545, 552, 559, 565, 571, 577, 583, 589, 595, 601, 607, 613, 619, 625, 631, 637, 643, 649, 655, 661, 667, 673, 679, 685, 691, 699, 701, 703, 707, 711, 722, 724, 728, 730, 732, 748, 750, 754, 756, 758, 760, 762, 764, 766, 768, 770, 772, 774, 778, 783, 788, 793, 798, 803, 808, 813, 820, 825, 830, 835, 842, 847, 852, 857, 862, 867, 874, 879, 884, 891, 894, 897, 901, 903, 934, 941, 946, 963, 968, 985, 992, 994, 996, 1001, 1005, 1009, 1013, 1015, 1017, 1021, 1022, 1026, 1028, 1030, 1032, 1036, 1038, 1040, 1042, 1044, 1046, 1050, 1052, 1061, 1069, 1070, 1076, 1077, 1084, 1088, 1090, 1092, 1099, 1101, 1103, 1107, 1108, 1111, 1113, 1115, 1119, 1120, 1129, 1142, 1158, 1173, 1175, 1177, 1184, 1187, 1191, 1193, 1199, 1205, 1222, 1242, 1244, 1267, 1271, 1273, 1275};#endif#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */static const char *const yytname[] ={ "$end", "error", "$undefined", "IF", "THEN", "ELSE", "ELIF", "FI", "CASE", "ESAC", "FOR", "SELECT", "WHILE", "UNTIL", "DO", "DONE", "FUNCTION", "COPROC", "COND_START", "COND_END", "COND_ERROR", "IN", "BANG", "TIME", "TIMEOPT", "TIMEIGN", "WORD", "ASSIGNMENT_WORD", "REDIR_WORD", "NUMBER", "ARITH_CMD", "ARITH_FOR_EXPRS", "COND_CMD", "AND_AND", "OR_OR", "GREATER_GREATER", "LESS_LESS", "LESS_AND", "LESS_LESS_LESS", "GREATER_AND", "SEMI_SEMI", "SEMI_AND", "SEMI_SEMI_AND", "LESS_LESS_MINUS", "AND_GREATER", "AND_GREATER_GREATER", "LESS_GREATER", "GREATER_BAR", "BAR_AND", "'&'", "';'", "'\\n'", "yacc_EOF", "'|'", "'>'", "'<'", "'-'", "'{'", "'}'", "'('", "')'", "$accept", "inputunit", "word_list", "redirection", "simple_command_element", "redirection_list", "simple_command", "command", "shell_command", "for_command", "arith_for_command", "select_command", "case_command", "function_def", "function_body", "subshell", "coproc", "if_command", "group_command", "arith_command", "cond_command", "elif_clause", "case_clause", "pattern_list", "case_clause_sequence", "pattern", "list", "compound_list", "list0", "list1", "simple_list_terminator", "list_terminator", "newline_list", "simple_list", "simple_list1", "pipeline_command", "pipeline", "timespec", 0};#endif# ifdef YYPRINT/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to token YYLEX-NUM. */static const yytype_uint16 yytoknum[] ={ 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 38, 59, 10, 304, 124, 62, 60, 45, 123, 125, 40, 41};# endif/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */static const yytype_uint8 yyr1[] ={ 0, 61, 62, 62, 62, 62, 63, 63, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 65, 65, 65, 66, 66, 67, 67, 68, 68, 68, 68, 68, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 70, 70, 70, 70, 70, 70, 70, 70, 71, 71, 71, 71, 72, 72, 72, 72, 72, 72, 73, 73, 73, 74, 74, 74, 75, 75, 76, 77, 77, 77, 77, 77, 78, 78, 78, 79, 80, 81, 82, 82, 82, 83, 83, 84, 84, 84, 84, 85, 85, 85, 85, 85, 85, 86, 86, 87, 88, 88, 89, 89, 89, 90, 90, 90, 90, 90, 90, 91, 91, 92, 92, 92, 93, 93, 94, 94, 94, 95, 95, 95, 95, 95, 96, 96, 96, 96, 96, 97, 97, 97, 98, 98, 98};/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */static const yytype_uint8 yyr2[] ={ 0, 2, 2, 1, 2, 1, 1, 2, 2, 2, 3, 3, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 3, 3, 2, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 5, 5, 1, 1, 1, 1, 1, 1, 1, 6, 6, 7, 7, 10, 10, 9, 9, 7, 7, 5, 5, 6, 6, 7, 7, 10, 10, 6, 7, 6, 5, 6, 4, 1, 2, 3, 2, 3, 3, 4, 2, 5, 7, 6, 3, 1, 3, 4, 6, 5, 1, 2, 4, 4, 5, 5, 2, 3, 2, 3, 2, 3, 1, 3, 2, 1, 2, 3, 3, 3, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 0, 2, 1, 2, 2, 4, 4, 3, 3, 1, 1, 2, 2, 2, 2, 4, 4, 1, 1, 2, 3};/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state STATE-NUM when YYTABLE doesn't specify something else to do. Zero means the default is an error. */static const yytype_uint8 yydefact[] ={ 0, 0, 147, 0, 0, 0, 147, 147, 0, 0, 0, 0, 165, 52, 53, 0, 0, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 0, 0, 147, 147, 0, 54, 57, 59, 164, 60, 64, 74, 68, 65, 62, 70, 63, 69, 71, 72, 73, 0, 149, 156, 157, 0, 4, 131, 0, 0, 147, 147, 0, 147, 0, 0, 147, 52, 106, 102, 0, 145, 144, 146, 161, 158, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 23, 38, 32, 47, 29, 41, 35, 44, 26, 50, 51, 20, 17, 8, 9, 0, 0, 1, 52, 58, 55, 61, 142, 143, 2, 147, 147, 150, 151, 147, 147, 160, 159, 147, 148, 130, 132, 141, 0, 147, 0, 147, 147, 147, 147, 0, 147, 147, 0, 0, 104, 103, 112, 167, 147, 16, 25, 40, 34, 49, 31, 43, 37, 46, 28, 22, 19, 12, 13, 15, 24, 39, 33, 48, 30, 42, 36, 45, 27, 21, 18, 10, 11, 110, 101, 56, 0, 0, 154, 155, 0, 0, 0, 147, 147, 147, 147, 147, 147, 0, 147, 0, 147, 0, 0, 0, 0, 147, 0, 147, 0, 0, 147, 99, 98, 105, 0, 152, 153, 0, 0, 163, 162, 147, 147, 107, 0, 0, 0, 134, 135, 133, 0, 116, 147, 0, 147, 147, 0, 6, 0, 147, 0, 85, 86, 147, 147, 147, 147, 0, 0, 0, 0, 66, 67, 0, 100, 96, 0, 0, 109, 136, 137, 138, 139, 140, 95, 122, 124, 126, 117, 0, 93, 128, 0, 0, 0, 0, 75, 7, 147, 0, 76, 0, 0, 0, 0, 87, 0, 147, 88, 97, 108, 147, 147, 147, 147, 123, 125, 127, 94,
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -