X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/f52d66ff00b24111f87c274d3d7085ef2e1d27b1..ae774d3615d6a2c66871accfd3b07ca8459ef7c7:/scripts/config/zconf.tab.c_shipped diff --git a/scripts/config/zconf.tab.c_shipped b/scripts/config/zconf.tab.c_shipped index 8060dc6a0..7aeffb5de 100644 --- a/scripts/config/zconf.tab.c_shipped +++ b/scripts/config/zconf.tab.c_shipped @@ -81,19 +81,21 @@ T_PROMPT = 274, T_TYPE = 275, T_DEFAULT = 276, - T_SELECT = 277, - T_RANGE = 278, - T_ON = 279, - T_WORD = 280, - T_WORD_QUOTE = 281, - T_UNEQUAL = 282, - T_CLOSE_PAREN = 283, - T_OPEN_PAREN = 284, - T_EOL = 285, - T_OR = 286, - T_AND = 287, - T_EQUAL = 288, - T_NOT = 289 + T_DESELECT = 277, + T_SELECT = 278, + T_RANGE = 279, + T_ON = 280, + T_RESET = 281, + T_WORD = 282, + T_WORD_QUOTE = 283, + T_UNEQUAL = 284, + T_CLOSE_PAREN = 285, + T_OPEN_PAREN = 286, + T_EOL = 287, + T_OR = 288, + T_AND = 289, + T_EQUAL = 290, + T_NOT = 291 }; #endif #define T_MAINMENU 258 @@ -115,19 +117,21 @@ #define T_PROMPT 274 #define T_TYPE 275 #define T_DEFAULT 276 -#define T_SELECT 277 -#define T_RANGE 278 -#define T_ON 279 -#define T_WORD 280 -#define T_WORD_QUOTE 281 -#define T_UNEQUAL 282 -#define T_CLOSE_PAREN 283 -#define T_OPEN_PAREN 284 -#define T_EOL 285 -#define T_OR 286 -#define T_AND 287 -#define T_EQUAL 288 -#define T_NOT 289 +#define T_DESELECT 277 +#define T_SELECT 278 +#define T_RANGE 279 +#define T_ON 280 +#define T_RESET 281 +#define T_WORD 282 +#define T_WORD_QUOTE 283 +#define T_UNEQUAL 284 +#define T_CLOSE_PAREN 285 +#define T_OPEN_PAREN 286 +#define T_EOL 287 +#define T_OR 288 +#define T_AND 289 +#define T_EQUAL 290 +#define T_NOT 291 @@ -165,7 +169,7 @@ static void zconf_error(const char *err, ...); static void zconferror(const char *err); static bool zconf_endtoken(struct kconf_id *id, int starttoken, int endtoken); -struct symbol *symbol_hash[257]; +struct symbol *symbol_hash[SYMBOL_HASHSIZE]; static struct menu *current_menu, *current_entry; @@ -317,20 +321,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 264 +#define YYLAST 285 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 35 +#define YYNTOKENS 37 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 42 /* YYNRULES -- Number of rules. */ -#define YYNRULES 104 +#define YYNRULES 108 /* YYNRULES -- Number of states. */ -#define YYNSTATES 175 +#define YYNSTATES 184 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 289 +#define YYMAXUTOK 291 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -366,7 +370,8 @@ static const unsigned char yytranslate[] = 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 + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36 }; #if YYDEBUG @@ -376,68 +381,69 @@ static const unsigned short int yyprhs[] = { 0, 0, 3, 5, 6, 9, 12, 15, 20, 23, 28, 33, 37, 39, 41, 43, 45, 47, 49, 51, - 53, 55, 57, 59, 61, 63, 67, 70, 74, 77, - 81, 84, 85, 88, 91, 94, 97, 100, 104, 109, - 114, 119, 125, 128, 131, 133, 137, 138, 141, 144, - 147, 150, 153, 158, 162, 165, 170, 171, 174, 178, - 180, 184, 185, 188, 191, 194, 198, 201, 203, 207, - 208, 211, 214, 217, 221, 225, 228, 231, 234, 235, - 238, 241, 244, 249, 253, 257, 258, 261, 263, 265, - 268, 271, 274, 276, 279, 280, 283, 285, 289, 293, - 297, 300, 304, 308, 310 + 53, 55, 57, 59, 61, 63, 65, 67, 71, 74, + 78, 81, 85, 88, 89, 92, 95, 98, 101, 104, + 108, 113, 118, 123, 128, 134, 137, 140, 142, 146, + 147, 150, 153, 156, 159, 162, 167, 171, 174, 178, + 183, 184, 187, 191, 193, 197, 198, 201, 204, 207, + 211, 214, 216, 220, 221, 224, 227, 230, 234, 238, + 241, 244, 247, 248, 251, 254, 257, 262, 266, 270, + 271, 274, 276, 278, 281, 284, 287, 289, 292, 293, + 296, 298, 302, 306, 310, 313, 317, 321, 323 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yysigned_char yyrhs[] = { - 36, 0, -1, 37, -1, -1, 37, 39, -1, 37, - 50, -1, 37, 61, -1, 37, 3, 71, 73, -1, - 37, 72, -1, 37, 25, 1, 30, -1, 37, 38, - 1, 30, -1, 37, 1, 30, -1, 16, -1, 19, - -1, 20, -1, 22, -1, 18, -1, 23, -1, 21, - -1, 30, -1, 56, -1, 65, -1, 42, -1, 44, - -1, 63, -1, 25, 1, 30, -1, 1, 30, -1, - 10, 25, 30, -1, 41, 45, -1, 11, 25, 30, - -1, 43, 45, -1, -1, 45, 46, -1, 45, 69, - -1, 45, 67, -1, 45, 40, -1, 45, 30, -1, - 20, 70, 30, -1, 19, 71, 74, 30, -1, 21, - 75, 74, 30, -1, 22, 25, 74, 30, -1, 23, - 76, 76, 74, 30, -1, 7, 30, -1, 47, 51, - -1, 72, -1, 48, 53, 49, -1, -1, 51, 52, - -1, 51, 69, -1, 51, 67, -1, 51, 30, -1, - 51, 40, -1, 19, 71, 74, 30, -1, 20, 70, - 30, -1, 18, 30, -1, 21, 25, 74, 30, -1, - -1, 53, 39, -1, 14, 75, 73, -1, 72, -1, - 54, 57, 55, -1, -1, 57, 39, -1, 57, 61, - -1, 57, 50, -1, 4, 71, 30, -1, 58, 68, - -1, 72, -1, 59, 62, 60, -1, -1, 62, 39, - -1, 62, 61, -1, 62, 50, -1, 6, 71, 30, - -1, 9, 71, 30, -1, 64, 68, -1, 12, 30, - -1, 66, 13, -1, -1, 68, 69, -1, 68, 30, - -1, 68, 40, -1, 16, 24, 75, 30, -1, 16, - 75, 30, -1, 17, 75, 30, -1, -1, 71, 74, - -1, 25, -1, 26, -1, 5, 30, -1, 8, 30, - -1, 15, 30, -1, 30, -1, 73, 30, -1, -1, - 14, 75, -1, 76, -1, 76, 33, 76, -1, 76, - 27, 76, -1, 29, 75, 28, -1, 34, 75, -1, - 75, 31, 75, -1, 75, 32, 75, -1, 25, -1, - 26, -1 + 38, 0, -1, 39, -1, -1, 39, 41, -1, 39, + 52, -1, 39, 63, -1, 39, 3, 73, 75, -1, + 39, 74, -1, 39, 27, 1, 32, -1, 39, 40, + 1, 32, -1, 39, 1, 32, -1, 16, -1, 19, + -1, 20, -1, 22, -1, 23, -1, 18, -1, 24, + -1, 21, -1, 26, -1, 32, -1, 58, -1, 67, + -1, 44, -1, 46, -1, 65, -1, 27, 1, 32, + -1, 1, 32, -1, 10, 27, 32, -1, 43, 47, + -1, 11, 27, 32, -1, 45, 47, -1, -1, 47, + 48, -1, 47, 71, -1, 47, 69, -1, 47, 42, + -1, 47, 32, -1, 20, 72, 32, -1, 19, 73, + 76, 32, -1, 21, 77, 76, 32, -1, 22, 27, + 76, 32, -1, 23, 27, 76, 32, -1, 24, 78, + 78, 76, 32, -1, 7, 32, -1, 49, 53, -1, + 74, -1, 50, 55, 51, -1, -1, 53, 54, -1, + 53, 71, -1, 53, 69, -1, 53, 32, -1, 53, + 42, -1, 19, 73, 76, 32, -1, 20, 72, 32, + -1, 18, 32, -1, 26, 76, 32, -1, 21, 27, + 76, 32, -1, -1, 55, 41, -1, 14, 77, 75, + -1, 74, -1, 56, 59, 57, -1, -1, 59, 41, + -1, 59, 63, -1, 59, 52, -1, 4, 73, 32, + -1, 60, 70, -1, 74, -1, 61, 64, 62, -1, + -1, 64, 41, -1, 64, 63, -1, 64, 52, -1, + 6, 73, 32, -1, 9, 73, 32, -1, 66, 70, + -1, 12, 32, -1, 68, 13, -1, -1, 70, 71, + -1, 70, 32, -1, 70, 42, -1, 16, 25, 77, + 32, -1, 16, 77, 32, -1, 17, 77, 32, -1, + -1, 73, 76, -1, 27, -1, 28, -1, 5, 32, + -1, 8, 32, -1, 15, 32, -1, 32, -1, 75, + 32, -1, -1, 14, 77, -1, 78, -1, 78, 35, + 78, -1, 78, 29, 78, -1, 31, 77, 30, -1, + 36, 77, -1, 77, 33, 77, -1, 77, 34, 77, + -1, 27, -1, 28, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const unsigned short int yyrline[] = { - 0, 103, 103, 105, 107, 108, 109, 110, 111, 112, - 113, 117, 121, 121, 121, 121, 121, 121, 121, 125, - 126, 127, 128, 129, 130, 134, 135, 141, 149, 155, - 163, 173, 175, 176, 177, 178, 179, 182, 190, 196, - 206, 212, 220, 229, 234, 242, 245, 247, 248, 249, - 250, 251, 254, 260, 271, 277, 287, 289, 294, 302, - 310, 313, 315, 316, 317, 322, 329, 334, 342, 345, - 347, 348, 349, 352, 360, 367, 374, 380, 387, 389, - 390, 391, 394, 399, 404, 412, 414, 419, 420, 423, - 424, 425, 429, 430, 433, 434, 437, 438, 439, 440, - 441, 442, 443, 446, 447 + 0, 105, 105, 107, 109, 110, 111, 112, 113, 114, + 115, 119, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 127, 128, 129, 130, 131, 132, 136, 137, 143, + 151, 157, 165, 175, 177, 178, 179, 180, 181, 184, + 192, 198, 208, 214, 220, 228, 237, 242, 250, 253, + 255, 256, 257, 258, 259, 262, 268, 279, 285, 290, + 300, 302, 307, 315, 323, 326, 328, 329, 330, 335, + 342, 347, 355, 358, 360, 361, 362, 365, 373, 380, + 387, 393, 400, 402, 403, 404, 407, 412, 417, 425, + 427, 432, 433, 436, 437, 438, 442, 443, 446, 447, + 450, 451, 452, 453, 454, 455, 456, 459, 460 }; #endif @@ -450,17 +456,18 @@ static const char *const yytname[] = "T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG", "T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS", "T_REQUIRES", "T_OPTIONAL", "T_PROMPT", "T_TYPE", "T_DEFAULT", - "T_SELECT", "T_RANGE", "T_ON", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL", - "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND", "T_EQUAL", - "T_NOT", "$accept", "input", "stmt_list", "option_name", "common_stmt", - "option_error", "config_entry_start", "config_stmt", - "menuconfig_entry_start", "menuconfig_stmt", "config_option_list", - "config_option", "choice", "choice_entry", "choice_end", "choice_stmt", - "choice_option_list", "choice_option", "choice_block", "if_entry", - "if_end", "if_stmt", "if_block", "menu", "menu_entry", "menu_end", - "menu_stmt", "menu_block", "source_stmt", "comment", "comment_stmt", - "help_start", "help", "depends_list", "depends", "prompt_stmt_opt", - "prompt", "end", "nl", "if_expr", "expr", "symbol", 0 + "T_DESELECT", "T_SELECT", "T_RANGE", "T_ON", "T_RESET", "T_WORD", + "T_WORD_QUOTE", "T_UNEQUAL", "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", + "T_OR", "T_AND", "T_EQUAL", "T_NOT", "$accept", "input", "stmt_list", + "option_name", "common_stmt", "option_error", "config_entry_start", + "config_stmt", "menuconfig_entry_start", "menuconfig_stmt", + "config_option_list", "config_option", "choice", "choice_entry", + "choice_end", "choice_stmt", "choice_option_list", "choice_option", + "choice_block", "if_entry", "if_end", "if_stmt", "if_block", "menu", + "menu_entry", "menu_end", "menu_stmt", "menu_block", "source_stmt", + "comment", "comment_stmt", "help_start", "help", "depends_list", + "depends", "prompt_stmt_opt", "prompt", "end", "nl", "if_expr", "expr", + "symbol", 0 }; #endif @@ -472,24 +479,24 @@ static const unsigned short int 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 + 285, 286, 287, 288, 289, 290, 291 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const unsigned char yyr1[] = { - 0, 35, 36, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 38, 38, 38, 38, 38, 38, 38, 39, - 39, 39, 39, 39, 39, 40, 40, 41, 42, 43, - 44, 45, 45, 45, 45, 45, 45, 46, 46, 46, - 46, 46, 47, 48, 49, 50, 51, 51, 51, 51, - 51, 51, 52, 52, 52, 52, 53, 53, 54, 55, - 56, 57, 57, 57, 57, 58, 59, 60, 61, 62, - 62, 62, 62, 63, 64, 65, 66, 67, 68, 68, - 68, 68, 69, 69, 69, 70, 70, 71, 71, 72, - 72, 72, 73, 73, 74, 74, 75, 75, 75, 75, - 75, 75, 75, 76, 76 + 0, 37, 38, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 41, 41, 41, 41, 41, 41, 42, 42, 43, + 44, 45, 46, 47, 47, 47, 47, 47, 47, 48, + 48, 48, 48, 48, 48, 49, 50, 51, 52, 53, + 53, 53, 53, 53, 53, 54, 54, 54, 54, 54, + 55, 55, 56, 57, 58, 59, 59, 59, 59, 60, + 61, 62, 63, 64, 64, 64, 64, 65, 66, 67, + 68, 69, 70, 70, 70, 70, 71, 71, 71, 72, + 72, 73, 73, 74, 74, 74, 75, 75, 76, 76, + 77, 77, 77, 77, 77, 77, 77, 78, 78 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -497,15 +504,15 @@ static const unsigned char yyr2[] = { 0, 2, 1, 0, 2, 2, 2, 4, 2, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 2, 3, 2, 3, - 2, 0, 2, 2, 2, 2, 2, 3, 4, 4, - 4, 5, 2, 2, 1, 3, 0, 2, 2, 2, - 2, 2, 4, 3, 2, 4, 0, 2, 3, 1, - 3, 0, 2, 2, 2, 3, 2, 1, 3, 0, - 2, 2, 2, 3, 3, 2, 2, 2, 0, 2, - 2, 2, 4, 3, 3, 0, 2, 1, 1, 2, - 2, 2, 1, 2, 0, 2, 1, 3, 3, 3, - 2, 3, 3, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 3, 2, 3, + 2, 3, 2, 0, 2, 2, 2, 2, 2, 3, + 4, 4, 4, 4, 5, 2, 2, 1, 3, 0, + 2, 2, 2, 2, 2, 4, 3, 2, 3, 4, + 0, 2, 3, 1, 3, 0, 2, 2, 2, 3, + 2, 1, 3, 0, 2, 2, 2, 3, 3, 2, + 2, 2, 0, 2, 2, 2, 4, 3, 3, 0, + 2, 1, 1, 2, 2, 2, 1, 2, 0, 2, + 1, 3, 3, 3, 2, 3, 3, 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -514,159 +521,166 @@ static const unsigned char yyr2[] = static const unsigned char yydefact[] = { 3, 0, 0, 1, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 12, 16, 13, 14, - 18, 15, 17, 0, 19, 0, 4, 31, 22, 31, - 23, 46, 56, 5, 61, 20, 78, 69, 6, 24, - 78, 21, 8, 11, 87, 88, 0, 0, 89, 0, - 42, 90, 0, 0, 0, 103, 104, 0, 0, 0, - 96, 91, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 92, 7, 65, 73, 74, 27, 29, 0, - 100, 0, 0, 58, 0, 0, 9, 10, 0, 0, - 0, 0, 0, 85, 0, 0, 0, 0, 36, 35, - 32, 0, 34, 33, 0, 0, 85, 0, 50, 51, - 47, 49, 48, 57, 45, 44, 62, 64, 60, 63, - 59, 80, 81, 79, 70, 72, 68, 71, 67, 93, - 99, 101, 102, 98, 97, 26, 76, 0, 0, 0, - 94, 0, 94, 94, 94, 0, 0, 77, 54, 94, - 0, 94, 0, 83, 84, 0, 0, 37, 86, 0, - 0, 94, 25, 0, 53, 0, 82, 95, 38, 39, - 40, 0, 52, 55, 41 + 0, 0, 0, 0, 0, 0, 12, 17, 13, 14, + 19, 15, 16, 18, 20, 0, 21, 0, 4, 33, + 24, 33, 25, 49, 60, 5, 65, 22, 82, 73, + 6, 26, 82, 23, 8, 11, 91, 92, 0, 0, + 93, 0, 45, 94, 0, 0, 0, 107, 108, 0, + 0, 0, 100, 95, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 96, 7, 69, 77, 78, 29, + 31, 0, 104, 0, 0, 62, 0, 0, 9, 10, + 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, + 0, 38, 37, 34, 0, 36, 35, 0, 0, 89, + 0, 98, 53, 54, 50, 52, 51, 61, 48, 47, + 66, 68, 64, 67, 63, 84, 85, 83, 74, 76, + 72, 75, 71, 97, 103, 105, 106, 102, 101, 28, + 80, 0, 0, 0, 98, 0, 98, 98, 98, 98, + 0, 0, 81, 57, 98, 0, 98, 0, 0, 0, + 87, 88, 0, 39, 90, 0, 0, 0, 98, 27, + 0, 56, 0, 99, 58, 86, 40, 41, 42, 43, + 0, 55, 59, 44 }; /* YYDEFGOTO[NTERM-NUM]. */ static const short int yydefgoto[] = { - -1, 1, 2, 25, 26, 99, 27, 28, 29, 30, - 64, 100, 31, 32, 114, 33, 66, 110, 67, 34, - 118, 35, 68, 36, 37, 126, 38, 70, 39, 40, - 41, 101, 102, 69, 103, 141, 142, 42, 73, 156, - 59, 60 + -1, 1, 2, 27, 28, 102, 29, 30, 31, 32, + 66, 103, 33, 34, 118, 35, 68, 114, 69, 36, + 122, 37, 70, 38, 39, 130, 40, 72, 41, 42, + 43, 104, 105, 71, 106, 145, 146, 44, 75, 158, + 61, 62 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -78 +#define YYPACT_NINF -80 static const short int yypact[] = { - -78, 2, 159, -78, -21, 0, 0, -12, 0, 1, - 4, 0, 27, 38, 60, 58, -78, -78, -78, -78, - -78, -78, -78, 100, -78, 104, -78, -78, -78, -78, - -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, - -78, -78, -78, -78, -78, -78, 86, 113, -78, 114, - -78, -78, 125, 127, 128, -78, -78, 60, 60, 210, - 65, -78, 141, 142, 39, 103, 182, 200, 6, 66, - 6, 131, -78, 146, -78, -78, -78, -78, -78, 196, - -78, 60, 60, 146, 40, 40, -78, -78, 155, 156, - -2, 60, 0, 0, 60, 105, 40, 194, -78, -78, - -78, 206, -78, -78, 183, 0, 0, 195, -78, -78, - -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, - -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, - -78, 197, -78, -78, -78, -78, -78, 60, 213, 216, - 212, 203, 212, 190, 212, 40, 208, -78, -78, 212, - 222, 212, 219, -78, -78, 60, 223, -78, -78, 224, - 225, 212, -78, 226, -78, 227, -78, 47, -78, -78, - -78, 228, -78, -78, -78 + -80, 2, 164, -80, -22, 105, 105, -6, 105, 0, + 7, 105, 17, 28, 70, 35, -80, -80, -80, -80, + -80, -80, -80, -80, -80, 69, -80, 78, -80, -80, + -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, + -80, -80, -80, -80, -80, -80, -80, -80, 62, 68, + -80, 85, -80, -80, 97, 127, 144, -80, -80, 70, + 70, 188, -8, -80, 149, 163, 42, 104, 192, 67, + 221, 8, 221, 134, -80, 167, -80, -80, -80, -80, + -80, 50, -80, 70, 70, 167, 119, 119, -80, -80, + 173, 184, 60, 70, 105, 105, 70, 65, 150, 119, + 232, -80, -80, -80, 210, -80, -80, 202, 105, 105, + 231, 224, -80, -80, -80, -80, -80, -80, -80, -80, + -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, + -80, -80, -80, -80, -80, 226, -80, -80, -80, -80, + -80, 70, 211, 218, 224, 230, 224, -3, 224, 224, + 119, 233, -80, -80, 224, 234, 224, 70, 235, 222, + -80, -80, 236, -80, -80, 237, 238, 239, 224, -80, + 240, -80, 241, 129, -80, -80, -80, -80, -80, -80, + 242, -80, -80, -80 }; /* YYPGOTO[NTERM-NUM]. */ static const short int yypgoto[] = { - -78, -78, -78, -78, 164, -36, -78, -78, -78, -78, - 230, -78, -78, -78, -78, 29, -78, -78, -78, -78, - -78, -78, -78, -78, -78, -78, 59, -78, -78, -78, - -78, -78, 198, 220, 24, 157, -5, 169, 202, 74, - -53, -77 + -80, -80, -80, -80, -36, 22, -80, -80, -80, -80, + 244, -80, -80, -80, -80, 176, -80, -80, -80, -80, + -80, -80, -80, -80, -80, -80, 187, -80, -80, -80, + -80, -80, 195, 243, 121, 155, -5, 145, 215, 93, + -55, -79 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -76 +#define YYTABLE_NINF -80 static const short int yytable[] = { - 46, 47, 3, 49, 79, 80, 52, 133, 134, 43, - 6, 7, 8, 9, 10, 11, 12, 13, 48, 145, - 14, 15, 137, 55, 56, 44, 45, 57, 131, 132, - 109, 50, 58, 122, 51, 122, 24, 138, 139, -28, - 88, 143, -28, -28, -28, -28, -28, -28, -28, -28, - -28, 89, 53, -28, -28, 90, 91, -28, 92, 93, - 94, 95, 96, 54, 97, 55, 56, 88, 161, 98, - -66, -66, -66, -66, -66, -66, -66, -66, 81, 82, - -66, -66, 90, 91, 152, 55, 56, 140, 61, 57, - 112, 97, 84, 123, 58, 123, 121, 117, 85, 125, - 149, 62, 167, -30, 88, 63, -30, -30, -30, -30, - -30, -30, -30, -30, -30, 89, 72, -30, -30, 90, - 91, -30, 92, 93, 94, 95, 96, 119, 97, 127, - 144, -75, 88, 98, -75, -75, -75, -75, -75, -75, - -75, -75, -75, 74, 75, -75, -75, 90, 91, -75, - -75, -75, -75, -75, -75, 76, 97, 77, 78, -2, - 4, 121, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 86, 87, 14, 15, 16, 129, 17, 18, 19, - 20, 21, 22, 88, 23, 135, 136, -43, -43, 24, - -43, -43, -43, -43, 89, 146, -43, -43, 90, 91, - 104, 105, 106, 107, 155, 7, 8, 97, 10, 11, - 12, 13, 108, 148, 14, 15, 158, 159, 160, 147, - 151, 81, 82, 163, 130, 165, 155, 81, 82, 82, - 24, 113, 116, 157, 124, 171, 115, 120, 162, 128, - 72, 81, 82, 153, 81, 82, 154, 81, 82, 166, - 81, 82, 164, 168, 169, 170, 172, 173, 174, 65, - 71, 83, 0, 150, 111 + 48, 49, 3, 51, 81, 82, 54, 137, 138, 90, + 45, 157, -70, -70, -70, -70, -70, -70, -70, -70, + 150, 86, -70, -70, 92, 93, 50, 87, 135, 136, + 83, 84, 52, 117, 120, 100, 128, 142, 143, 53, + 125, 147, -30, 90, 55, -30, -30, -30, -30, -30, + -30, -30, -30, -30, 91, 56, -30, -30, 92, 93, + -30, 94, 95, 96, 97, 98, 99, 63, -30, 100, + 64, 168, 7, 8, 101, 10, 11, 12, 13, 65, + 134, 14, 15, 83, 84, 141, 159, 57, 58, 144, + 113, 59, 148, 126, 74, 126, 60, 57, 58, 26, + 76, 59, 173, 154, -32, 90, 60, -32, -32, -32, + -32, -32, -32, -32, -32, -32, 91, 77, -32, -32, + 92, 93, -32, 94, 95, 96, 97, 98, 99, 78, + -32, 100, 46, 47, -79, 90, 101, -79, -79, -79, + -79, -79, -79, -79, -79, -79, 57, 58, -79, -79, + 92, 93, -79, -79, -79, -79, -79, -79, -79, 79, + -79, 100, 83, 84, -2, 4, 125, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 80, 149, 14, 15, + 16, 88, 17, 18, 19, 20, 21, 22, 23, 116, + 24, 25, 127, 90, 127, 89, 26, -46, -46, 133, + -46, -46, -46, -46, 91, 139, -46, -46, 92, 93, + 107, 108, 109, 110, 119, 124, 140, 132, 111, 100, + 74, 83, 84, 152, 112, 6, 7, 8, 9, 10, + 11, 12, 13, 151, 153, 14, 15, 162, 157, 164, + 165, 166, 167, 160, 83, 84, 121, 170, 129, 172, + 161, 83, 84, 26, 175, 83, 84, 123, 156, 131, + 84, 180, 163, 115, 155, 169, 171, 174, 176, 177, + 178, 179, 181, 182, 183, 67, 85, 0, 0, 0, + 0, 0, 0, 0, 0, 73 }; static const short int yycheck[] = { - 5, 6, 0, 8, 57, 58, 11, 84, 85, 30, - 4, 5, 6, 7, 8, 9, 10, 11, 30, 96, - 14, 15, 24, 25, 26, 25, 26, 29, 81, 82, - 66, 30, 34, 69, 30, 71, 30, 90, 91, 0, - 1, 94, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 25, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 25, 25, 25, 26, 1, 145, 30, - 4, 5, 6, 7, 8, 9, 10, 11, 31, 32, - 14, 15, 16, 17, 137, 25, 26, 92, 30, 29, - 66, 25, 27, 69, 34, 71, 30, 68, 33, 70, - 105, 1, 155, 0, 1, 1, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 30, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 68, 25, 70, - 25, 0, 1, 30, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 30, 30, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 30, 25, 30, 30, 0, - 1, 30, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 30, 30, 14, 15, 16, 30, 18, 19, 20, - 21, 22, 23, 1, 25, 30, 30, 5, 6, 30, - 8, 9, 10, 11, 12, 1, 14, 15, 16, 17, - 18, 19, 20, 21, 14, 5, 6, 25, 8, 9, - 10, 11, 30, 30, 14, 15, 142, 143, 144, 13, - 25, 31, 32, 149, 28, 151, 14, 31, 32, 32, - 30, 67, 68, 30, 70, 161, 67, 68, 30, 70, - 30, 31, 32, 30, 31, 32, 30, 31, 32, 30, - 31, 32, 30, 30, 30, 30, 30, 30, 30, 29, - 40, 59, -1, 106, 66 + 5, 6, 0, 8, 59, 60, 11, 86, 87, 1, + 32, 14, 4, 5, 6, 7, 8, 9, 10, 11, + 99, 29, 14, 15, 16, 17, 32, 35, 83, 84, + 33, 34, 32, 69, 70, 27, 72, 92, 93, 32, + 32, 96, 0, 1, 27, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 27, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 32, 26, 27, + 1, 150, 5, 6, 32, 8, 9, 10, 11, 1, + 30, 14, 15, 33, 34, 25, 141, 27, 28, 94, + 68, 31, 27, 71, 32, 73, 36, 27, 28, 32, + 32, 31, 157, 108, 0, 1, 36, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 32, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 32, + 26, 27, 27, 28, 0, 1, 32, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 27, 28, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 32, + 26, 27, 33, 34, 0, 1, 32, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 32, 27, 14, 15, + 16, 32, 18, 19, 20, 21, 22, 23, 24, 68, + 26, 27, 71, 1, 73, 32, 32, 5, 6, 32, + 8, 9, 10, 11, 12, 32, 14, 15, 16, 17, + 18, 19, 20, 21, 69, 70, 32, 72, 26, 27, + 32, 33, 34, 13, 32, 4, 5, 6, 7, 8, + 9, 10, 11, 1, 32, 14, 15, 144, 14, 146, + 147, 148, 149, 32, 33, 34, 70, 154, 72, 156, + 32, 33, 34, 32, 32, 33, 34, 70, 27, 72, + 34, 168, 32, 68, 109, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 31, 61, -1, -1, -1, + -1, -1, -1, -1, -1, 42 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const unsigned char yystos[] = { - 0, 36, 37, 0, 1, 3, 4, 5, 6, 7, + 0, 38, 39, 0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 16, 18, 19, 20, - 21, 22, 23, 25, 30, 38, 39, 41, 42, 43, - 44, 47, 48, 50, 54, 56, 58, 59, 61, 63, - 64, 65, 72, 30, 25, 26, 71, 71, 30, 71, - 30, 30, 71, 25, 25, 25, 26, 29, 34, 75, - 76, 30, 1, 1, 45, 45, 51, 53, 57, 68, - 62, 68, 30, 73, 30, 30, 30, 30, 30, 75, - 75, 31, 32, 73, 27, 33, 30, 30, 1, 12, - 16, 17, 19, 20, 21, 22, 23, 25, 30, 40, - 46, 66, 67, 69, 18, 19, 20, 21, 30, 40, - 52, 67, 69, 39, 49, 72, 39, 50, 55, 61, - 72, 30, 40, 69, 39, 50, 60, 61, 72, 30, - 28, 75, 75, 76, 76, 30, 30, 24, 75, 75, - 71, 70, 71, 75, 25, 76, 1, 13, 30, 71, - 70, 25, 75, 30, 30, 14, 74, 30, 74, 74, - 74, 76, 30, 74, 30, 74, 30, 75, 30, 30, - 30, 74, 30, 30, 30 + 21, 22, 23, 24, 26, 27, 32, 40, 41, 43, + 44, 45, 46, 49, 50, 52, 56, 58, 60, 61, + 63, 65, 66, 67, 74, 32, 27, 28, 73, 73, + 32, 73, 32, 32, 73, 27, 27, 27, 28, 31, + 36, 77, 78, 32, 1, 1, 47, 47, 53, 55, + 59, 70, 64, 70, 32, 75, 32, 32, 32, 32, + 32, 77, 77, 33, 34, 75, 29, 35, 32, 32, + 1, 12, 16, 17, 19, 20, 21, 22, 23, 24, + 27, 32, 42, 48, 68, 69, 71, 18, 19, 20, + 21, 26, 32, 42, 54, 69, 71, 41, 51, 74, + 41, 52, 57, 63, 74, 32, 42, 71, 41, 52, + 62, 63, 74, 32, 30, 77, 77, 78, 78, 32, + 32, 25, 77, 77, 73, 72, 73, 77, 27, 27, + 78, 1, 13, 32, 73, 72, 27, 14, 76, 77, + 32, 32, 76, 32, 76, 76, 76, 76, 78, 32, + 76, 32, 76, 77, 32, 32, 32, 32, 32, 32, + 76, 32, 32, 32 }; #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) @@ -976,7 +990,7 @@ yydestruct (yytype, yyvaluep) switch (yytype) { - case 48: /* choice_entry */ + case 50: /* choice_entry */ { fprintf(stderr, "%s:%d: missing end statement for this entry\n", @@ -986,7 +1000,7 @@ yydestruct (yytype, yyvaluep) }; break; - case 54: /* if_entry */ + case 56: /* if_entry */ { fprintf(stderr, "%s:%d: missing end statement for this entry\n", @@ -996,7 +1010,7 @@ yydestruct (yytype, yyvaluep) }; break; - case 59: /* menu_entry */ + case 61: /* menu_entry */ { fprintf(stderr, "%s:%d: missing end statement for this entry\n", @@ -1329,17 +1343,17 @@ yyreduce: { zconf_error("invalid statement"); ;} break; - case 25: + case 27: { zconf_error("unknown option \"%s\"", yyvsp[-2].string); ;} break; - case 26: + case 28: { zconf_error("invalid option"); ;} break; - case 27: + case 29: { struct symbol *sym = sym_lookup(yyvsp[-1].string, 0); @@ -1349,7 +1363,7 @@ yyreduce: ;} break; - case 28: + case 30: { menu_end_entry(); @@ -1357,7 +1371,7 @@ yyreduce: ;} break; - case 29: + case 31: { struct symbol *sym = sym_lookup(yyvsp[-1].string, 0); @@ -1367,7 +1381,7 @@ yyreduce: ;} break; - case 30: + case 32: { if (current_entry->prompt) @@ -1379,7 +1393,7 @@ yyreduce: ;} break; - case 37: + case 39: { menu_set_type(yyvsp[-2].id->stype); @@ -1389,7 +1403,7 @@ yyreduce: ;} break; - case 38: + case 40: { menu_add_prompt(P_PROMPT, yyvsp[-2].string, yyvsp[-1].expr); @@ -1397,7 +1411,7 @@ yyreduce: ;} break; - case 39: + case 41: { menu_add_expr(P_DEFAULT, yyvsp[-2].expr, yyvsp[-1].expr); @@ -1409,7 +1423,15 @@ yyreduce: ;} break; - case 40: + case 42: + + { + menu_add_symbol(P_DESELECT, sym_lookup(yyvsp[-2].string, 0), yyvsp[-1].expr); + printd(DEBUG_PARSE, "%s:%d:deselect\n", zconf_curname(), zconf_lineno()); +;} + break; + + case 43: { menu_add_symbol(P_SELECT, sym_lookup(yyvsp[-2].string, 0), yyvsp[-1].expr); @@ -1417,7 +1439,7 @@ yyreduce: ;} break; - case 41: + case 44: { menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,yyvsp[-3].symbol, yyvsp[-2].symbol), yyvsp[-1].expr); @@ -1425,7 +1447,7 @@ yyreduce: ;} break; - case 42: + case 45: { struct symbol *sym = sym_lookup(NULL, 0); @@ -1436,14 +1458,14 @@ yyreduce: ;} break; - case 43: + case 46: { yyval.menu = menu_add_menu(); ;} break; - case 44: + case 47: { if (zconf_endtoken(yyvsp[0].id, T_CHOICE, T_ENDCHOICE)) { @@ -1453,7 +1475,7 @@ yyreduce: ;} break; - case 52: + case 55: { menu_add_prompt(P_PROMPT, yyvsp[-2].string, yyvsp[-1].expr); @@ -1461,7 +1483,7 @@ yyreduce: ;} break; - case 53: + case 56: { if (yyvsp[-2].id->stype == S_BOOLEAN || yyvsp[-2].id->stype == S_TRISTATE) { @@ -1474,7 +1496,7 @@ yyreduce: ;} break; - case 54: + case 57: { current_entry->sym->flags |= SYMBOL_OPTIONAL; @@ -1482,7 +1504,14 @@ yyreduce: ;} break; - case 55: + case 58: + + { + menu_add_prop(P_RESET, NULL, NULL, yyvsp[-1].expr); +;} + break; + + case 59: { if (yyvsp[-3].id->stype == S_UNKNOWN) { @@ -1494,7 +1523,7 @@ yyreduce: ;} break; - case 58: + case 62: { printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); @@ -1504,7 +1533,7 @@ yyreduce: ;} break; - case 59: + case 63: { if (zconf_endtoken(yyvsp[0].id, T_IF, T_ENDIF)) { @@ -1514,7 +1543,7 @@ yyreduce: ;} break; - case 65: + case 69: { menu_add_entry(NULL); @@ -1523,14 +1552,14 @@ yyreduce: ;} break; - case 66: + case 70: { yyval.menu = menu_add_menu(); ;} break; - case 67: + case 71: { if (zconf_endtoken(yyvsp[0].id, T_MENU, T_ENDMENU)) { @@ -1540,7 +1569,7 @@ yyreduce: ;} break; - case 73: + case 77: { printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), yyvsp[-1].string); @@ -1548,7 +1577,7 @@ yyreduce: ;} break; - case 74: + case 78: { menu_add_entry(NULL); @@ -1557,14 +1586,14 @@ yyreduce: ;} break; - case 75: + case 79: { menu_end_entry(); ;} break; - case 76: + case 80: { printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); @@ -1572,14 +1601,14 @@ yyreduce: ;} break; - case 77: + case 81: { current_entry->sym->help = yyvsp[0].string; ;} break; - case 82: + case 86: { menu_add_dep(yyvsp[-1].expr); @@ -1587,7 +1616,7 @@ yyreduce: ;} break; - case 83: + case 87: { menu_add_dep(yyvsp[-1].expr); @@ -1595,7 +1624,7 @@ yyreduce: ;} break; - case 84: + case 88: { menu_add_dep(yyvsp[-1].expr); @@ -1603,79 +1632,79 @@ yyreduce: ;} break; - case 86: + case 90: { menu_add_prompt(P_PROMPT, yyvsp[-1].string, yyvsp[0].expr); ;} break; - case 89: + case 93: { yyval.id = yyvsp[-1].id; ;} break; - case 90: + case 94: { yyval.id = yyvsp[-1].id; ;} break; - case 91: + case 95: { yyval.id = yyvsp[-1].id; ;} break; - case 94: + case 98: { yyval.expr = NULL; ;} break; - case 95: + case 99: { yyval.expr = yyvsp[0].expr; ;} break; - case 96: + case 100: { yyval.expr = expr_alloc_symbol(yyvsp[0].symbol); ;} break; - case 97: + case 101: { yyval.expr = expr_alloc_comp(E_EQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;} break; - case 98: + case 102: { yyval.expr = expr_alloc_comp(E_UNEQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;} break; - case 99: + case 103: { yyval.expr = yyvsp[-1].expr; ;} break; - case 100: + case 104: { yyval.expr = expr_alloc_one(E_NOT, yyvsp[0].expr); ;} break; - case 101: + case 105: { yyval.expr = expr_alloc_two(E_OR, yyvsp[-2].expr, yyvsp[0].expr); ;} break; - case 102: + case 106: { yyval.expr = expr_alloc_two(E_AND, yyvsp[-2].expr, yyvsp[0].expr); ;} break; - case 103: + case 107: { yyval.symbol = sym_lookup(yyvsp[0].string, 0); free(yyvsp[0].string); ;} break; - case 104: + case 108: { yyval.symbol = sym_lookup(yyvsp[0].string, 1); free(yyvsp[0].string); ;} break;