kconfig: regen parser

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

authored by Arnaud Lacombe and committed by Mauro Carvalho Chehab 09899c93 86e187ff

+377 -353
+64 -58
scripts/kconfig/zconf.hash.c_shipped
··· 32 32 struct kconf_id; 33 33 34 34 static struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len); 35 - /* maximum key range = 47, duplicates = 0 */ 35 + /* maximum key range = 50, duplicates = 0 */ 36 36 37 37 #ifdef __GNUC__ 38 38 __inline ··· 46 46 { 47 47 static unsigned char asso_values[] = 48 48 { 49 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 51 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 52 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 53 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 54 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 55 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 56 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 57 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 58 - 49, 49, 49, 49, 49, 49, 49, 49, 11, 5, 59 - 0, 0, 5, 49, 5, 20, 49, 49, 5, 20, 60 - 5, 0, 30, 49, 0, 15, 0, 10, 0, 49, 61 - 25, 49, 49, 49, 49, 49, 49, 49, 49, 49, 62 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 63 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 64 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 65 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 66 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 67 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 68 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 69 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 70 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 71 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 72 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 73 - 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 74 - 49, 49, 49, 49, 49, 49 49 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 50 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 51 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 53 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 54 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 55 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 56 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 57 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 58 + 52, 52, 52, 52, 52, 52, 52, 52, 40, 5, 59 + 0, 0, 5, 52, 0, 20, 52, 52, 10, 20, 60 + 5, 0, 35, 52, 0, 30, 0, 15, 0, 52, 61 + 15, 52, 52, 52, 52, 52, 52, 52, 52, 52, 62 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 63 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 64 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 65 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 66 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 67 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 68 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 69 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 70 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 71 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 72 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 73 + 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 74 + 52, 52, 52, 52, 52, 52 75 75 }; 76 76 register int hval = len; 77 77 ··· 102 102 char kconf_id_strings_str12[sizeof("default")]; 103 103 char kconf_id_strings_str13[sizeof("def_bool")]; 104 104 char kconf_id_strings_str14[sizeof("help")]; 105 - char kconf_id_strings_str15[sizeof("bool")]; 106 105 char kconf_id_strings_str16[sizeof("config")]; 107 106 char kconf_id_strings_str17[sizeof("def_tristate")]; 108 - char kconf_id_strings_str18[sizeof("boolean")]; 107 + char kconf_id_strings_str18[sizeof("hex")]; 109 108 char kconf_id_strings_str19[sizeof("defconfig_list")]; 110 - char kconf_id_strings_str21[sizeof("string")]; 111 109 char kconf_id_strings_str22[sizeof("if")]; 112 110 char kconf_id_strings_str23[sizeof("int")]; 113 - char kconf_id_strings_str26[sizeof("select")]; 114 111 char kconf_id_strings_str27[sizeof("modules")]; 115 112 char kconf_id_strings_str28[sizeof("tristate")]; 116 113 char kconf_id_strings_str29[sizeof("menu")]; 117 - char kconf_id_strings_str31[sizeof("source")]; 118 114 char kconf_id_strings_str32[sizeof("comment")]; 119 - char kconf_id_strings_str33[sizeof("hex")]; 120 115 char kconf_id_strings_str35[sizeof("menuconfig")]; 121 - char kconf_id_strings_str36[sizeof("prompt")]; 122 - char kconf_id_strings_str37[sizeof("depends")]; 116 + char kconf_id_strings_str36[sizeof("string")]; 117 + char kconf_id_strings_str37[sizeof("visible")]; 118 + char kconf_id_strings_str41[sizeof("prompt")]; 119 + char kconf_id_strings_str42[sizeof("depends")]; 120 + char kconf_id_strings_str44[sizeof("bool")]; 121 + char kconf_id_strings_str46[sizeof("select")]; 122 + char kconf_id_strings_str47[sizeof("boolean")]; 123 123 char kconf_id_strings_str48[sizeof("mainmenu")]; 124 + char kconf_id_strings_str51[sizeof("source")]; 124 125 }; 125 126 static struct kconf_id_strings_t kconf_id_strings_contents = 126 127 { ··· 137 136 "default", 138 137 "def_bool", 139 138 "help", 140 - "bool", 141 139 "config", 142 140 "def_tristate", 143 - "boolean", 141 + "hex", 144 142 "defconfig_list", 145 - "string", 146 143 "if", 147 144 "int", 148 - "select", 149 145 "modules", 150 146 "tristate", 151 147 "menu", 152 - "source", 153 148 "comment", 154 - "hex", 155 149 "menuconfig", 150 + "string", 151 + "visible", 156 152 "prompt", 157 153 "depends", 158 - "mainmenu" 154 + "bool", 155 + "select", 156 + "boolean", 157 + "mainmenu", 158 + "source" 159 159 }; 160 160 #define kconf_id_strings ((const char *) &kconf_id_strings_contents) 161 161 #ifdef __GNUC__ ··· 170 168 { 171 169 enum 172 170 { 173 - TOTAL_KEYWORDS = 31, 171 + TOTAL_KEYWORDS = 32, 174 172 MIN_WORD_LENGTH = 2, 175 173 MAX_WORD_LENGTH = 14, 176 174 MIN_HASH_VALUE = 2, 177 - MAX_HASH_VALUE = 48 175 + MAX_HASH_VALUE = 51 178 176 }; 179 177 180 178 static struct kconf_id wordlist[] = ··· 193 191 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12, T_DEFAULT, TF_COMMAND, S_UNKNOWN}, 194 192 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13, T_DEFAULT, TF_COMMAND, S_BOOLEAN}, 195 193 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14, T_HELP, TF_COMMAND}, 196 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str15, T_TYPE, TF_COMMAND, S_BOOLEAN}, 194 + {-1}, 197 195 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16, T_CONFIG, TF_COMMAND}, 198 196 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17, T_DEFAULT, TF_COMMAND, S_TRISTATE}, 199 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_TYPE, TF_COMMAND, S_BOOLEAN}, 197 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_TYPE, TF_COMMAND, S_HEX}, 200 198 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19, T_OPT_DEFCONFIG_LIST,TF_OPTION}, 201 - {-1}, 202 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21, T_TYPE, TF_COMMAND, S_STRING}, 199 + {-1}, {-1}, 203 200 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22, T_IF, TF_COMMAND|TF_PARAM}, 204 201 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23, T_TYPE, TF_COMMAND, S_INT}, 205 - {-1}, {-1}, 206 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26, T_SELECT, TF_COMMAND}, 202 + {-1}, {-1}, {-1}, 207 203 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27, T_OPT_MODULES, TF_OPTION}, 208 204 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28, T_TYPE, TF_COMMAND, S_TRISTATE}, 209 205 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str29, T_MENU, TF_COMMAND}, 210 - {-1}, 211 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str31, T_SOURCE, TF_COMMAND}, 206 + {-1}, {-1}, 212 207 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32, T_COMMENT, TF_COMMAND}, 213 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str33, T_TYPE, TF_COMMAND, S_HEX}, 214 - {-1}, 208 + {-1}, {-1}, 215 209 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35, T_MENUCONFIG, TF_COMMAND}, 216 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_PROMPT, TF_COMMAND}, 217 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37, T_DEPENDS, TF_COMMAND}, 218 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, 210 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_TYPE, TF_COMMAND, S_STRING}, 211 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37, T_VISIBLE, TF_COMMAND}, 212 + {-1}, {-1}, {-1}, 213 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str41, T_PROMPT, TF_COMMAND}, 214 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str42, T_DEPENDS, TF_COMMAND}, 219 215 {-1}, 220 - {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48, T_MAINMENU, TF_COMMAND} 216 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str44, T_TYPE, TF_COMMAND, S_BOOLEAN}, 217 + {-1}, 218 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str46, T_SELECT, TF_COMMAND}, 219 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str47, T_TYPE, TF_COMMAND, S_BOOLEAN}, 220 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48, T_MAINMENU, TF_COMMAND}, 221 + {-1}, {-1}, 222 + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str51, T_SOURCE, TF_COMMAND} 221 223 }; 222 224 223 225 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+313 -295
scripts/kconfig/zconf.tab.c_shipped
··· 160 160 T_DEFAULT = 275, 161 161 T_SELECT = 276, 162 162 T_RANGE = 277, 163 - T_OPTION = 278, 164 - T_ON = 279, 165 - T_WORD = 280, 166 - T_WORD_QUOTE = 281, 167 - T_UNEQUAL = 282, 168 - T_CLOSE_PAREN = 283, 169 - T_OPEN_PAREN = 284, 170 - T_EOL = 285, 171 - T_OR = 286, 172 - T_AND = 287, 173 - T_EQUAL = 288, 174 - T_NOT = 289 163 + T_VISIBLE = 278, 164 + T_OPTION = 279, 165 + T_ON = 280, 166 + T_WORD = 281, 167 + T_WORD_QUOTE = 282, 168 + T_UNEQUAL = 283, 169 + T_CLOSE_PAREN = 284, 170 + T_OPEN_PAREN = 285, 171 + T_EOL = 286, 172 + T_OR = 287, 173 + T_AND = 288, 174 + T_EQUAL = 289, 175 + T_NOT = 290 175 176 }; 176 177 #endif 177 178 ··· 420 419 /* YYFINAL -- State number of the termination state. */ 421 420 #define YYFINAL 11 422 421 /* YYLAST -- Last index in YYTABLE. */ 423 - #define YYLAST 277 422 + #define YYLAST 290 424 423 425 424 /* YYNTOKENS -- Number of terminals. */ 426 - #define YYNTOKENS 35 425 + #define YYNTOKENS 36 427 426 /* YYNNTS -- Number of nonterminals. */ 428 - #define YYNNTS 48 427 + #define YYNNTS 50 429 428 /* YYNRULES -- Number of rules. */ 430 - #define YYNRULES 113 429 + #define YYNRULES 118 431 430 /* YYNRULES -- Number of states. */ 432 - #define YYNSTATES 185 431 + #define YYNSTATES 191 433 432 434 433 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ 435 434 #define YYUNDEFTOK 2 436 - #define YYMAXUTOK 289 435 + #define YYMAXUTOK 290 437 436 438 437 #define YYTRANSLATE(YYX) \ 439 438 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) ··· 469 468 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 470 469 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 471 470 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 472 - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34 471 + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 472 + 35 473 473 }; 474 474 475 475 #if YYDEBUG ··· 480 478 { 481 479 0, 0, 3, 6, 8, 11, 13, 14, 17, 20, 482 480 23, 26, 31, 36, 40, 42, 44, 46, 48, 50, 483 - 52, 54, 56, 58, 60, 62, 64, 66, 70, 73, 484 - 77, 80, 84, 87, 88, 91, 94, 97, 100, 103, 485 - 106, 110, 115, 120, 125, 131, 135, 136, 140, 141, 486 - 144, 148, 151, 153, 157, 158, 161, 164, 167, 170, 487 - 173, 178, 182, 185, 190, 191, 194, 198, 200, 204, 488 - 205, 208, 211, 214, 218, 222, 225, 227, 231, 232, 489 - 235, 238, 241, 245, 249, 252, 255, 258, 259, 262, 490 - 265, 268, 273, 274, 277, 279, 281, 284, 287, 290, 491 - 292, 295, 296, 299, 301, 305, 309, 313, 316, 320, 492 - 324, 326, 328, 329 481 + 52, 54, 56, 58, 60, 62, 64, 66, 68, 72, 482 + 75, 79, 82, 86, 89, 90, 93, 96, 99, 102, 483 + 105, 108, 112, 117, 122, 127, 133, 137, 138, 142, 484 + 143, 146, 150, 153, 155, 159, 160, 163, 166, 169, 485 + 172, 175, 180, 184, 187, 192, 193, 196, 200, 202, 486 + 206, 207, 210, 213, 216, 220, 224, 228, 230, 234, 487 + 235, 238, 241, 244, 248, 252, 255, 258, 261, 262, 488 + 265, 268, 271, 276, 277, 280, 283, 286, 287, 290, 489 + 292, 294, 297, 300, 303, 305, 308, 309, 312, 314, 490 + 318, 322, 326, 329, 333, 337, 339, 341, 342 493 491 }; 494 492 495 493 /* YYRHS -- A `-1'-separated list of the rules' RHS. */ 496 494 static const yytype_int8 yyrhs[] = 497 495 { 498 - 36, 0, -1, 78, 37, -1, 37, -1, 62, 38, 499 - -1, 38, -1, -1, 38, 40, -1, 38, 54, -1, 500 - 38, 66, -1, 38, 77, -1, 38, 25, 1, 30, 501 - -1, 38, 39, 1, 30, -1, 38, 1, 30, -1, 496 + 37, 0, -1, 81, 38, -1, 38, -1, 63, 39, 497 + -1, 39, -1, -1, 39, 41, -1, 39, 55, -1, 498 + 39, 67, -1, 39, 80, -1, 39, 26, 1, 31, 499 + -1, 39, 40, 1, 31, -1, 39, 1, 31, -1, 502 500 16, -1, 18, -1, 19, -1, 21, -1, 17, -1, 503 - 22, -1, 20, -1, 30, -1, 60, -1, 70, -1, 504 - 43, -1, 45, -1, 68, -1, 25, 1, 30, -1, 505 - 1, 30, -1, 10, 25, 30, -1, 42, 46, -1, 506 - 11, 25, 30, -1, 44, 46, -1, -1, 46, 47, 507 - -1, 46, 48, -1, 46, 74, -1, 46, 72, -1, 508 - 46, 41, -1, 46, 30, -1, 19, 75, 30, -1, 509 - 18, 76, 79, 30, -1, 20, 80, 79, 30, -1, 510 - 21, 25, 79, 30, -1, 22, 81, 81, 79, 30, 511 - -1, 23, 49, 30, -1, -1, 49, 25, 50, -1, 512 - -1, 33, 76, -1, 7, 82, 30, -1, 51, 55, 513 - -1, 77, -1, 52, 57, 53, -1, -1, 55, 56, 514 - -1, 55, 74, -1, 55, 72, -1, 55, 30, -1, 515 - 55, 41, -1, 18, 76, 79, 30, -1, 19, 75, 516 - 30, -1, 17, 30, -1, 20, 25, 79, 30, -1, 517 - -1, 57, 40, -1, 14, 80, 78, -1, 77, -1, 518 - 58, 61, 59, -1, -1, 61, 40, -1, 61, 66, 519 - -1, 61, 54, -1, 3, 76, 78, -1, 4, 76, 520 - 30, -1, 63, 73, -1, 77, -1, 64, 67, 65, 521 - -1, -1, 67, 40, -1, 67, 66, -1, 67, 54, 522 - -1, 6, 76, 30, -1, 9, 76, 30, -1, 69, 523 - 73, -1, 12, 30, -1, 71, 13, -1, -1, 73, 524 - 74, -1, 73, 30, -1, 73, 41, -1, 16, 24, 525 - 80, 30, -1, -1, 76, 79, -1, 25, -1, 26, 526 - -1, 5, 30, -1, 8, 30, -1, 15, 30, -1, 527 - 30, -1, 78, 30, -1, -1, 14, 80, -1, 81, 528 - -1, 81, 33, 81, -1, 81, 27, 81, -1, 29, 529 - 80, 28, -1, 34, 80, -1, 80, 31, 80, -1, 530 - 80, 32, 80, -1, 25, -1, 26, -1, -1, 25, 531 - -1 501 + 22, -1, 20, -1, 23, -1, 31, -1, 61, -1, 502 + 71, -1, 44, -1, 46, -1, 69, -1, 26, 1, 503 + 31, -1, 1, 31, -1, 10, 26, 31, -1, 43, 504 + 47, -1, 11, 26, 31, -1, 45, 47, -1, -1, 505 + 47, 48, -1, 47, 49, -1, 47, 75, -1, 47, 506 + 73, -1, 47, 42, -1, 47, 31, -1, 19, 78, 507 + 31, -1, 18, 79, 82, 31, -1, 20, 83, 82, 508 + 31, -1, 21, 26, 82, 31, -1, 22, 84, 84, 509 + 82, 31, -1, 24, 50, 31, -1, -1, 50, 26, 510 + 51, -1, -1, 34, 79, -1, 7, 85, 31, -1, 511 + 52, 56, -1, 80, -1, 53, 58, 54, -1, -1, 512 + 56, 57, -1, 56, 75, -1, 56, 73, -1, 56, 513 + 31, -1, 56, 42, -1, 18, 79, 82, 31, -1, 514 + 19, 78, 31, -1, 17, 31, -1, 20, 26, 82, 515 + 31, -1, -1, 58, 41, -1, 14, 83, 81, -1, 516 + 80, -1, 59, 62, 60, -1, -1, 62, 41, -1, 517 + 62, 67, -1, 62, 55, -1, 3, 79, 81, -1, 518 + 4, 79, 31, -1, 64, 76, 74, -1, 80, -1, 519 + 65, 68, 66, -1, -1, 68, 41, -1, 68, 67, 520 + -1, 68, 55, -1, 6, 79, 31, -1, 9, 79, 521 + 31, -1, 70, 74, -1, 12, 31, -1, 72, 13, 522 + -1, -1, 74, 75, -1, 74, 31, -1, 74, 42, 523 + -1, 16, 25, 83, 31, -1, -1, 76, 77, -1, 524 + 76, 31, -1, 23, 82, -1, -1, 79, 82, -1, 525 + 26, -1, 27, -1, 5, 31, -1, 8, 31, -1, 526 + 15, 31, -1, 31, -1, 81, 31, -1, -1, 14, 527 + 83, -1, 84, -1, 84, 34, 84, -1, 84, 28, 528 + 84, -1, 30, 83, 29, -1, 35, 83, -1, 83, 529 + 32, 83, -1, 83, 33, 83, -1, 26, -1, 27, 530 + -1, -1, 26, -1 532 531 }; 533 532 534 533 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ 535 534 static const yytype_uint16 yyrline[] = 536 535 { 537 - 0, 107, 107, 107, 109, 109, 111, 113, 114, 115, 538 - 116, 117, 118, 122, 126, 126, 126, 126, 126, 126, 539 - 126, 130, 131, 132, 133, 134, 135, 139, 140, 146, 540 - 154, 160, 168, 178, 180, 181, 182, 183, 184, 185, 541 - 188, 196, 202, 212, 218, 224, 227, 229, 240, 241, 542 - 246, 255, 260, 268, 271, 273, 274, 275, 276, 277, 543 - 280, 286, 297, 303, 313, 315, 320, 328, 336, 339, 544 - 341, 342, 343, 348, 355, 362, 367, 375, 378, 380, 545 - 381, 382, 385, 393, 400, 407, 413, 420, 422, 423, 546 - 424, 427, 435, 437, 442, 443, 446, 447, 448, 452, 547 - 453, 456, 457, 460, 461, 462, 463, 464, 465, 466, 548 - 469, 470, 473, 474 536 + 0, 108, 108, 108, 110, 110, 112, 114, 115, 116, 537 + 117, 118, 119, 123, 127, 127, 127, 127, 127, 127, 538 + 127, 127, 131, 132, 133, 134, 135, 136, 140, 141, 539 + 147, 155, 161, 169, 179, 181, 182, 183, 184, 185, 540 + 186, 189, 197, 203, 213, 219, 225, 228, 230, 241, 541 + 242, 247, 256, 261, 269, 272, 274, 275, 276, 277, 542 + 278, 281, 287, 298, 304, 314, 316, 321, 329, 337, 543 + 340, 342, 343, 344, 349, 356, 363, 368, 376, 379, 544 + 381, 382, 383, 386, 394, 401, 408, 414, 421, 423, 545 + 424, 425, 428, 436, 438, 439, 442, 449, 451, 456, 546 + 457, 460, 461, 462, 466, 467, 470, 471, 474, 475, 547 + 476, 477, 478, 479, 480, 483, 484, 487, 488 549 548 }; 550 549 #endif 551 550 ··· 559 556 "T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG", 560 557 "T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS", 561 558 "T_OPTIONAL", "T_PROMPT", "T_TYPE", "T_DEFAULT", "T_SELECT", "T_RANGE", 562 - "T_OPTION", "T_ON", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL", 559 + "T_VISIBLE", "T_OPTION", "T_ON", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL", 563 560 "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND", "T_EQUAL", 564 561 "T_NOT", "$accept", "input", "start", "stmt_list", "option_name", 565 562 "common_stmt", "option_error", "config_entry_start", "config_stmt", ··· 570 567 "if_entry", "if_end", "if_stmt", "if_block", "mainmenu_stmt", "menu", 571 568 "menu_entry", "menu_end", "menu_stmt", "menu_block", "source_stmt", 572 569 "comment", "comment_stmt", "help_start", "help", "depends_list", 573 - "depends", "prompt_stmt_opt", "prompt", "end", "nl", "if_expr", "expr", 574 - "symbol", "word_opt", 0 570 + "depends", "visibility_list", "visible", "prompt_stmt_opt", "prompt", 571 + "end", "nl", "if_expr", "expr", "symbol", "word_opt", 0 575 572 }; 576 573 #endif 577 574 ··· 583 580 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 584 581 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 585 582 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 586 - 285, 286, 287, 288, 289 583 + 285, 286, 287, 288, 289, 290 587 584 }; 588 585 # endif 589 586 590 587 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ 591 588 static const yytype_uint8 yyr1[] = 592 589 { 593 - 0, 35, 36, 36, 37, 37, 38, 38, 38, 38, 594 - 38, 38, 38, 38, 39, 39, 39, 39, 39, 39, 595 - 39, 40, 40, 40, 40, 40, 40, 41, 41, 42, 596 - 43, 44, 45, 46, 46, 46, 46, 46, 46, 46, 597 - 47, 47, 47, 47, 47, 48, 49, 49, 50, 50, 598 - 51, 52, 53, 54, 55, 55, 55, 55, 55, 55, 599 - 56, 56, 56, 56, 57, 57, 58, 59, 60, 61, 600 - 61, 61, 61, 62, 63, 64, 65, 66, 67, 67, 601 - 67, 67, 68, 69, 70, 71, 72, 73, 73, 73, 602 - 73, 74, 75, 75, 76, 76, 77, 77, 77, 78, 603 - 78, 79, 79, 80, 80, 80, 80, 80, 80, 80, 604 - 81, 81, 82, 82 590 + 0, 36, 37, 37, 38, 38, 39, 39, 39, 39, 591 + 39, 39, 39, 39, 40, 40, 40, 40, 40, 40, 592 + 40, 40, 41, 41, 41, 41, 41, 41, 42, 42, 593 + 43, 44, 45, 46, 47, 47, 47, 47, 47, 47, 594 + 47, 48, 48, 48, 48, 48, 49, 50, 50, 51, 595 + 51, 52, 53, 54, 55, 56, 56, 56, 56, 56, 596 + 56, 57, 57, 57, 57, 58, 58, 59, 60, 61, 597 + 62, 62, 62, 62, 63, 64, 65, 66, 67, 68, 598 + 68, 68, 68, 69, 70, 71, 72, 73, 74, 74, 599 + 74, 74, 75, 76, 76, 76, 77, 78, 78, 79, 600 + 79, 80, 80, 80, 81, 81, 82, 82, 83, 83, 601 + 83, 83, 83, 83, 83, 84, 84, 85, 85 605 602 }; 606 603 607 604 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ ··· 609 606 { 610 607 0, 2, 2, 1, 2, 1, 0, 2, 2, 2, 611 608 2, 4, 4, 3, 1, 1, 1, 1, 1, 1, 612 - 1, 1, 1, 1, 1, 1, 1, 3, 2, 3, 613 - 2, 3, 2, 0, 2, 2, 2, 2, 2, 2, 614 - 3, 4, 4, 4, 5, 3, 0, 3, 0, 2, 615 - 3, 2, 1, 3, 0, 2, 2, 2, 2, 2, 616 - 4, 3, 2, 4, 0, 2, 3, 1, 3, 0, 617 - 2, 2, 2, 3, 3, 2, 1, 3, 0, 2, 618 - 2, 2, 3, 3, 2, 2, 2, 0, 2, 2, 619 - 2, 4, 0, 2, 1, 1, 2, 2, 2, 1, 620 - 2, 0, 2, 1, 3, 3, 3, 2, 3, 3, 621 - 1, 1, 0, 1 609 + 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 610 + 3, 2, 3, 2, 0, 2, 2, 2, 2, 2, 611 + 2, 3, 4, 4, 4, 5, 3, 0, 3, 0, 612 + 2, 3, 2, 1, 3, 0, 2, 2, 2, 2, 613 + 2, 4, 3, 2, 4, 0, 2, 3, 1, 3, 614 + 0, 2, 2, 2, 3, 3, 3, 1, 3, 0, 615 + 2, 2, 2, 3, 3, 2, 2, 2, 0, 2, 616 + 2, 2, 4, 0, 2, 2, 2, 0, 2, 1, 617 + 1, 2, 2, 2, 1, 2, 0, 2, 1, 3, 618 + 3, 3, 2, 3, 3, 1, 1, 0, 1 622 619 }; 623 620 624 621 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state ··· 626 623 means the default is an error. */ 627 624 static const yytype_uint8 yydefact[] = 628 625 { 629 - 6, 0, 99, 0, 3, 0, 6, 6, 94, 95, 630 - 0, 1, 0, 0, 0, 0, 112, 0, 0, 0, 626 + 6, 0, 104, 0, 3, 0, 6, 6, 99, 100, 627 + 0, 1, 0, 0, 0, 0, 117, 0, 0, 0, 631 628 0, 0, 0, 14, 18, 15, 16, 20, 17, 19, 632 - 0, 21, 0, 7, 33, 24, 33, 25, 54, 64, 633 - 8, 69, 22, 87, 78, 9, 26, 87, 23, 10, 634 - 0, 100, 2, 73, 13, 0, 96, 0, 113, 0, 635 - 97, 0, 0, 0, 110, 111, 0, 0, 0, 103, 636 - 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 637 - 0, 74, 82, 50, 83, 29, 31, 0, 107, 0, 638 - 0, 66, 0, 0, 11, 12, 0, 0, 0, 0, 639 - 92, 0, 0, 0, 46, 0, 39, 38, 34, 35, 640 - 0, 37, 36, 0, 0, 92, 0, 58, 59, 55, 641 - 57, 56, 65, 53, 52, 70, 72, 68, 71, 67, 642 - 89, 90, 88, 79, 81, 77, 80, 76, 106, 108, 643 - 109, 105, 104, 28, 85, 0, 101, 0, 101, 101, 644 - 101, 0, 0, 0, 86, 62, 101, 0, 101, 0, 645 - 0, 0, 40, 93, 0, 0, 101, 48, 45, 27, 646 - 0, 61, 0, 91, 102, 41, 42, 43, 0, 0, 647 - 47, 60, 63, 44, 49 629 + 21, 0, 22, 0, 7, 34, 25, 34, 26, 55, 630 + 65, 8, 70, 23, 93, 79, 9, 27, 88, 24, 631 + 10, 0, 105, 2, 74, 13, 0, 101, 0, 118, 632 + 0, 102, 0, 0, 0, 115, 116, 0, 0, 0, 633 + 108, 103, 0, 0, 0, 0, 0, 0, 0, 88, 634 + 0, 0, 75, 83, 51, 84, 30, 32, 0, 112, 635 + 0, 0, 67, 0, 0, 11, 12, 0, 0, 0, 636 + 0, 97, 0, 0, 0, 47, 0, 40, 39, 35, 637 + 36, 0, 38, 37, 0, 0, 97, 0, 59, 60, 638 + 56, 58, 57, 66, 54, 53, 71, 73, 69, 72, 639 + 68, 106, 95, 0, 94, 80, 82, 78, 81, 77, 640 + 90, 91, 89, 111, 113, 114, 110, 109, 29, 86, 641 + 0, 106, 0, 106, 106, 106, 0, 0, 0, 87, 642 + 63, 106, 0, 106, 0, 96, 0, 0, 41, 98, 643 + 0, 0, 106, 49, 46, 28, 0, 62, 0, 107, 644 + 92, 42, 43, 44, 0, 0, 48, 61, 64, 45, 645 + 50 648 646 }; 649 647 650 648 /* YYDEFGOTO[NTERM-NUM]. */ 651 649 static const yytype_int16 yydefgoto[] = 652 650 { 653 - -1, 3, 4, 5, 32, 33, 107, 34, 35, 36, 654 - 37, 73, 108, 109, 152, 180, 38, 39, 123, 40, 655 - 75, 119, 76, 41, 127, 42, 77, 6, 43, 44, 656 - 135, 45, 79, 46, 47, 48, 110, 111, 78, 112, 657 - 147, 148, 49, 7, 161, 68, 69, 59 651 + -1, 3, 4, 5, 33, 34, 108, 35, 36, 37, 652 + 38, 74, 109, 110, 157, 186, 39, 40, 124, 41, 653 + 76, 120, 77, 42, 128, 43, 78, 6, 44, 45, 654 + 137, 46, 80, 47, 48, 49, 111, 112, 81, 113, 655 + 79, 134, 152, 153, 50, 7, 165, 69, 70, 60 658 656 }; 659 657 660 658 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 661 659 STATE-NUM. */ 662 - #define YYPACT_NINF -89 660 + #define YYPACT_NINF -90 663 661 static const yytype_int16 yypact[] = 664 662 { 665 - 3, 4, -89, 20, -89, 100, -89, 7, -89, -89, 666 - -8, -89, 17, 4, 28, 4, 37, 36, 4, 68, 667 - 87, -18, 69, -89, -89, -89, -89, -89, -89, -89, 668 - 128, -89, 138, -89, -89, -89, -89, -89, -89, -89, 669 - -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 670 - 127, -89, -89, 110, -89, 126, -89, 136, -89, 137, 671 - -89, 147, 150, 152, -89, -89, -18, -18, 171, -14, 672 - -89, 153, 157, 34, 67, 180, 233, 220, 207, 220, 673 - 154, -89, -89, -89, -89, -89, -89, 0, -89, -18, 674 - -18, 110, 44, 44, -89, -89, 163, 174, 182, 4, 675 - 4, -18, 194, 44, -89, 219, -89, -89, -89, -89, 676 - 223, -89, -89, 203, 4, 4, 215, -89, -89, -89, 677 - -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 678 - -89, -89, -89, -89, -89, -89, -89, -89, -89, 213, 679 - -89, -89, -89, -89, -89, -18, 232, 227, 232, -5, 680 - 232, 44, 35, 234, -89, -89, 232, 235, 232, 224, 681 - -18, 236, -89, -89, 237, 238, 232, 216, -89, -89, 682 - 240, -89, 241, -89, 71, -89, -89, -89, 242, 4, 683 - -89, -89, -89, -89, -89 663 + 4, 42, -90, 96, -90, 111, -90, 15, -90, -90, 664 + 75, -90, 82, 42, 104, 42, 110, 107, 42, 115, 665 + 125, -4, 121, -90, -90, -90, -90, -90, -90, -90, 666 + -90, 162, -90, 163, -90, -90, -90, -90, -90, -90, 667 + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 668 + -90, 139, -90, -90, 138, -90, 142, -90, 143, -90, 669 + 152, -90, 164, 167, 168, -90, -90, -4, -4, 77, 670 + -18, -90, 177, 185, 33, 71, 195, 247, 236, -2, 671 + 236, 171, -90, -90, -90, -90, -90, -90, 41, -90, 672 + -4, -4, 138, 97, 97, -90, -90, 186, 187, 194, 673 + 42, 42, -4, 196, 97, -90, 219, -90, -90, -90, 674 + -90, 210, -90, -90, 204, 42, 42, 199, -90, -90, 675 + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 676 + -90, 222, -90, 223, -90, -90, -90, -90, -90, -90, 677 + -90, -90, -90, -90, 215, -90, -90, -90, -90, -90, 678 + -4, 222, 228, 222, -5, 222, 97, 35, 229, -90, 679 + -90, 222, 232, 222, -4, -90, 135, 233, -90, -90, 680 + 234, 235, 222, 240, -90, -90, 237, -90, 239, -13, 681 + -90, -90, -90, -90, 244, 42, -90, -90, -90, -90, 682 + -90 684 683 }; 685 684 686 685 /* YYPGOTO[NTERM-NUM]. */ 687 686 static const yytype_int16 yypgoto[] = 688 687 { 689 - -89, -89, 255, 267, -89, 47, -57, -89, -89, -89, 690 - -89, 239, -89, -89, -89, -89, -89, -89, -89, 130, 691 - -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 692 - -89, 181, -89, -89, -89, -89, -89, 199, 229, 16, 693 - 162, -1, 74, -7, 103, -65, -88, -89 688 + -90, -90, 269, 271, -90, 23, -70, -90, -90, -90, 689 + -90, 243, -90, -90, -90, -90, -90, -90, -90, -48, 690 + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 691 + -90, -20, -90, -90, -90, -90, -90, 206, 205, -68, 692 + -90, -90, 169, -1, 27, -7, 118, -66, -89, -90 694 693 }; 695 694 696 695 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If 697 696 positive, shift that token. If negative, reduce the rule which 698 697 number is the opposite. If zero, do what YYDEFACT says. 699 698 If YYTABLE_NINF, syntax error. */ 700 - #define YYTABLE_NINF -85 699 + #define YYTABLE_NINF -86 701 700 static const yytype_int16 yytable[] = 702 701 { 703 - 10, 87, 88, 53, 141, 142, 1, 64, 65, 160, 704 - 1, 66, 55, 92, 57, 151, 67, 61, 118, 93, 705 - 11, 131, 2, 131, 139, 140, 89, 90, 138, 8, 706 - 9, 89, 90, 2, -30, 96, 149, 51, -30, -30, 707 - -30, -30, -30, -30, -30, -30, 97, 54, -30, -30, 708 - 98, -30, 99, 100, 101, 102, 103, 104, 56, 105, 709 - 167, 91, 58, 166, 106, 168, 60, -32, 96, 64, 710 - 65, -32, -32, -32, -32, -32, -32, -32, -32, 97, 711 - 159, -32, -32, 98, -32, 99, 100, 101, 102, 103, 712 - 104, 121, 105, 62, 132, 174, 132, 106, 146, 70, 713 - -5, 12, 89, 90, 13, 14, 15, 16, 17, 18, 714 - 19, 20, 63, 156, 21, 22, 23, 24, 25, 26, 715 - 27, 28, 29, 122, 125, 30, 133, -4, 12, 71, 716 - 31, 13, 14, 15, 16, 17, 18, 19, 20, 72, 717 - 51, 21, 22, 23, 24, 25, 26, 27, 28, 29, 718 - 124, 129, 30, 137, -84, 96, 81, 31, -84, -84, 719 - -84, -84, -84, -84, -84, -84, 82, 83, -84, -84, 720 - 98, -84, -84, -84, -84, -84, -84, 84, 184, 105, 721 - 85, 96, 86, 94, 130, -51, -51, 95, -51, -51, 722 - -51, -51, 97, 143, -51, -51, 98, 113, 114, 115, 723 - 116, 2, 89, 90, 144, 105, 145, 126, 96, 134, 724 - 117, -75, -75, -75, -75, -75, -75, -75, -75, 150, 725 - 153, -75, -75, 98, 13, 14, 15, 16, 17, 18, 726 - 19, 20, 105, 155, 21, 22, 154, 130, 14, 15, 727 - 158, 17, 18, 19, 20, 90, 160, 21, 22, 179, 728 - 31, 163, 164, 165, 173, 89, 90, 162, 128, 170, 729 - 136, 172, 52, 31, 169, 171, 175, 176, 177, 178, 730 - 181, 182, 183, 50, 120, 74, 80, 157 702 + 10, 88, 89, 54, 146, 147, 119, 1, 122, 164, 703 + 93, 141, 56, 142, 58, 156, 94, 62, 1, 90, 704 + 91, 131, 65, 66, 144, 145, 67, 90, 91, 132, 705 + 127, 68, 136, -31, 97, 2, 154, -31, -31, -31, 706 + -31, -31, -31, -31, -31, 98, 52, -31, -31, 99, 707 + -31, 100, 101, 102, 103, 104, -31, 105, 129, 106, 708 + 138, 173, 92, 141, 107, 142, 174, 172, 8, 9, 709 + 143, -33, 97, 90, 91, -33, -33, -33, -33, -33, 710 + -33, -33, -33, 98, 166, -33, -33, 99, -33, 100, 711 + 101, 102, 103, 104, -33, 105, 11, 106, 179, 151, 712 + 123, 126, 107, 135, 125, 130, 2, 139, 2, 90, 713 + 91, -5, 12, 55, 161, 13, 14, 15, 16, 17, 714 + 18, 19, 20, 65, 66, 21, 22, 23, 24, 25, 715 + 26, 27, 28, 29, 30, 57, 59, 31, 61, -4, 716 + 12, 63, 32, 13, 14, 15, 16, 17, 18, 19, 717 + 20, 64, 71, 21, 22, 23, 24, 25, 26, 27, 718 + 28, 29, 30, 72, 73, 31, 180, 90, 91, 52, 719 + 32, -85, 97, 82, 83, -85, -85, -85, -85, -85, 720 + -85, -85, -85, 84, 190, -85, -85, 99, -85, -85, 721 + -85, -85, -85, -85, -85, 85, 97, 106, 86, 87, 722 + -52, -52, 140, -52, -52, -52, -52, 98, 95, -52, 723 + -52, 99, 114, 115, 116, 117, 96, 148, 149, 150, 724 + 158, 106, 155, 159, 97, 163, 118, -76, -76, -76, 725 + -76, -76, -76, -76, -76, 160, 164, -76, -76, 99, 726 + 13, 14, 15, 16, 17, 18, 19, 20, 91, 106, 727 + 21, 22, 14, 15, 140, 17, 18, 19, 20, 168, 728 + 175, 21, 22, 177, 181, 182, 183, 32, 187, 167, 729 + 188, 169, 170, 171, 185, 189, 53, 51, 32, 176, 730 + 75, 178, 121, 0, 133, 162, 0, 0, 0, 0, 731 + 184 731 732 }; 732 733 733 - static const yytype_uint8 yycheck[] = 734 + static const yytype_int16 yycheck[] = 734 735 { 735 - 1, 66, 67, 10, 92, 93, 3, 25, 26, 14, 736 - 3, 29, 13, 27, 15, 103, 34, 18, 75, 33, 737 - 0, 78, 30, 80, 89, 90, 31, 32, 28, 25, 738 - 26, 31, 32, 30, 0, 1, 101, 30, 4, 5, 739 - 6, 7, 8, 9, 10, 11, 12, 30, 14, 15, 740 - 16, 17, 18, 19, 20, 21, 22, 23, 30, 25, 741 - 25, 68, 25, 151, 30, 30, 30, 0, 1, 25, 742 - 26, 4, 5, 6, 7, 8, 9, 10, 11, 12, 743 - 145, 14, 15, 16, 17, 18, 19, 20, 21, 22, 744 - 23, 75, 25, 25, 78, 160, 80, 30, 99, 30, 745 - 0, 1, 31, 32, 4, 5, 6, 7, 8, 9, 746 - 10, 11, 25, 114, 14, 15, 16, 17, 18, 19, 747 - 20, 21, 22, 76, 77, 25, 79, 0, 1, 1, 748 - 30, 4, 5, 6, 7, 8, 9, 10, 11, 1, 749 - 30, 14, 15, 16, 17, 18, 19, 20, 21, 22, 750 - 76, 77, 25, 79, 0, 1, 30, 30, 4, 5, 751 - 6, 7, 8, 9, 10, 11, 30, 30, 14, 15, 752 - 16, 17, 18, 19, 20, 21, 22, 30, 179, 25, 753 - 30, 1, 30, 30, 30, 5, 6, 30, 8, 9, 754 - 10, 11, 12, 30, 14, 15, 16, 17, 18, 19, 755 - 20, 30, 31, 32, 30, 25, 24, 77, 1, 79, 756 - 30, 4, 5, 6, 7, 8, 9, 10, 11, 25, 757 - 1, 14, 15, 16, 4, 5, 6, 7, 8, 9, 758 - 10, 11, 25, 30, 14, 15, 13, 30, 5, 6, 759 - 25, 8, 9, 10, 11, 32, 14, 14, 15, 33, 760 - 30, 148, 149, 150, 30, 31, 32, 30, 77, 156, 761 - 79, 158, 7, 30, 30, 30, 30, 30, 30, 166, 762 - 30, 30, 30, 6, 75, 36, 47, 115 736 + 1, 67, 68, 10, 93, 94, 76, 3, 76, 14, 737 + 28, 81, 13, 81, 15, 104, 34, 18, 3, 32, 738 + 33, 23, 26, 27, 90, 91, 30, 32, 33, 31, 739 + 78, 35, 80, 0, 1, 31, 102, 4, 5, 6, 740 + 7, 8, 9, 10, 11, 12, 31, 14, 15, 16, 741 + 17, 18, 19, 20, 21, 22, 23, 24, 78, 26, 742 + 80, 26, 69, 133, 31, 133, 31, 156, 26, 27, 743 + 29, 0, 1, 32, 33, 4, 5, 6, 7, 8, 744 + 9, 10, 11, 12, 150, 14, 15, 16, 17, 18, 745 + 19, 20, 21, 22, 23, 24, 0, 26, 164, 100, 746 + 77, 78, 31, 80, 77, 78, 31, 80, 31, 32, 747 + 33, 0, 1, 31, 115, 4, 5, 6, 7, 8, 748 + 9, 10, 11, 26, 27, 14, 15, 16, 17, 18, 749 + 19, 20, 21, 22, 23, 31, 26, 26, 31, 0, 750 + 1, 26, 31, 4, 5, 6, 7, 8, 9, 10, 751 + 11, 26, 31, 14, 15, 16, 17, 18, 19, 20, 752 + 21, 22, 23, 1, 1, 26, 31, 32, 33, 31, 753 + 31, 0, 1, 31, 31, 4, 5, 6, 7, 8, 754 + 9, 10, 11, 31, 185, 14, 15, 16, 17, 18, 755 + 19, 20, 21, 22, 23, 31, 1, 26, 31, 31, 756 + 5, 6, 31, 8, 9, 10, 11, 12, 31, 14, 757 + 15, 16, 17, 18, 19, 20, 31, 31, 31, 25, 758 + 1, 26, 26, 13, 1, 26, 31, 4, 5, 6, 759 + 7, 8, 9, 10, 11, 31, 14, 14, 15, 16, 760 + 4, 5, 6, 7, 8, 9, 10, 11, 33, 26, 761 + 14, 15, 5, 6, 31, 8, 9, 10, 11, 31, 762 + 31, 14, 15, 31, 31, 31, 31, 31, 31, 151, 763 + 31, 153, 154, 155, 34, 31, 7, 6, 31, 161, 764 + 37, 163, 76, -1, 79, 116, -1, -1, -1, -1, 765 + 172 763 766 }; 764 767 765 768 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 766 769 symbol of state STATE-NUM. */ 767 770 static const yytype_uint8 yystos[] = 768 771 { 769 - 0, 3, 30, 36, 37, 38, 62, 78, 25, 26, 770 - 76, 0, 1, 4, 5, 6, 7, 8, 9, 10, 772 + 0, 3, 31, 37, 38, 39, 63, 81, 26, 27, 773 + 79, 0, 1, 4, 5, 6, 7, 8, 9, 10, 771 774 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 772 - 25, 30, 39, 40, 42, 43, 44, 45, 51, 52, 773 - 54, 58, 60, 63, 64, 66, 68, 69, 70, 77, 774 - 38, 30, 37, 78, 30, 76, 30, 76, 25, 82, 775 - 30, 76, 25, 25, 25, 26, 29, 34, 80, 81, 776 - 30, 1, 1, 46, 46, 55, 57, 61, 73, 67, 777 - 73, 30, 30, 30, 30, 30, 30, 80, 80, 31, 778 - 32, 78, 27, 33, 30, 30, 1, 12, 16, 18, 779 - 19, 20, 21, 22, 23, 25, 30, 41, 47, 48, 780 - 71, 72, 74, 17, 18, 19, 20, 30, 41, 56, 781 - 72, 74, 40, 53, 77, 40, 54, 59, 66, 77, 782 - 30, 41, 74, 40, 54, 65, 66, 77, 28, 80, 783 - 80, 81, 81, 30, 30, 24, 76, 75, 76, 80, 784 - 25, 81, 49, 1, 13, 30, 76, 75, 25, 80, 785 - 14, 79, 30, 79, 79, 79, 81, 25, 30, 30, 786 - 79, 30, 79, 30, 80, 30, 30, 30, 79, 33, 787 - 50, 30, 30, 30, 76 775 + 23, 26, 31, 40, 41, 43, 44, 45, 46, 52, 776 + 53, 55, 59, 61, 64, 65, 67, 69, 70, 71, 777 + 80, 39, 31, 38, 81, 31, 79, 31, 79, 26, 778 + 85, 31, 79, 26, 26, 26, 27, 30, 35, 83, 779 + 84, 31, 1, 1, 47, 47, 56, 58, 62, 76, 780 + 68, 74, 31, 31, 31, 31, 31, 31, 83, 83, 781 + 32, 33, 81, 28, 34, 31, 31, 1, 12, 16, 782 + 18, 19, 20, 21, 22, 24, 26, 31, 42, 48, 783 + 49, 72, 73, 75, 17, 18, 19, 20, 31, 42, 784 + 57, 73, 75, 41, 54, 80, 41, 55, 60, 67, 785 + 80, 23, 31, 74, 77, 41, 55, 66, 67, 80, 786 + 31, 42, 75, 29, 83, 83, 84, 84, 31, 31, 787 + 25, 79, 78, 79, 83, 26, 84, 50, 1, 13, 788 + 31, 79, 78, 26, 14, 82, 83, 82, 31, 82, 789 + 82, 82, 84, 26, 31, 31, 82, 31, 82, 83, 790 + 31, 31, 31, 31, 82, 34, 51, 31, 31, 31, 791 + 79 788 792 }; 789 793 790 794 #define yyerrok (yyerrstatus = 0) ··· 1302 1292 1303 1293 switch (yytype) 1304 1294 { 1305 - case 52: /* "choice_entry" */ 1295 + case 53: /* "choice_entry" */ 1306 1296 1307 1297 { 1308 1298 fprintf(stderr, "%s:%d: missing end statement for this entry\n", ··· 1312 1302 }; 1313 1303 1314 1304 break; 1315 - case 58: /* "if_entry" */ 1305 + case 59: /* "if_entry" */ 1316 1306 1317 1307 { 1318 1308 fprintf(stderr, "%s:%d: missing end statement for this entry\n", ··· 1322 1312 }; 1323 1313 1324 1314 break; 1325 - case 64: /* "menu_entry" */ 1315 + case 65: /* "menu_entry" */ 1326 1316 1327 1317 { 1328 1318 fprintf(stderr, "%s:%d: missing end statement for this entry\n", ··· 1654 1644 { zconf_error("invalid statement"); ;} 1655 1645 break; 1656 1646 1657 - case 27: 1647 + case 28: 1658 1648 1659 1649 { zconf_error("unknown option \"%s\"", (yyvsp[(1) - (3)].string)); ;} 1660 1650 break; 1661 1651 1662 - case 28: 1652 + case 29: 1663 1653 1664 1654 { zconf_error("invalid option"); ;} 1665 1655 break; 1666 1656 1667 - case 29: 1657 + case 30: 1668 1658 1669 1659 { 1670 1660 struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), 0); ··· 1674 1664 ;} 1675 1665 break; 1676 1666 1677 - case 30: 1667 + case 31: 1678 1668 1679 1669 { 1680 1670 menu_end_entry(); ··· 1682 1672 ;} 1683 1673 break; 1684 1674 1685 - case 31: 1675 + case 32: 1686 1676 1687 1677 { 1688 1678 struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), 0); ··· 1692 1682 ;} 1693 1683 break; 1694 1684 1695 - case 32: 1685 + case 33: 1696 1686 1697 1687 { 1698 1688 if (current_entry->prompt) ··· 1704 1694 ;} 1705 1695 break; 1706 1696 1707 - case 40: 1697 + case 41: 1708 1698 1709 1699 { 1710 1700 menu_set_type((yyvsp[(1) - (3)].id)->stype); ··· 1714 1704 ;} 1715 1705 break; 1716 1706 1717 - case 41: 1707 + case 42: 1718 1708 1719 1709 { 1720 1710 menu_add_prompt(P_PROMPT, (yyvsp[(2) - (4)].string), (yyvsp[(3) - (4)].expr)); ··· 1722 1712 ;} 1723 1713 break; 1724 1714 1725 - case 42: 1715 + case 43: 1726 1716 1727 1717 { 1728 1718 menu_add_expr(P_DEFAULT, (yyvsp[(2) - (4)].expr), (yyvsp[(3) - (4)].expr)); ··· 1734 1724 ;} 1735 1725 break; 1736 1726 1737 - case 43: 1727 + case 44: 1738 1728 1739 1729 { 1740 1730 menu_add_symbol(P_SELECT, sym_lookup((yyvsp[(2) - (4)].string), 0), (yyvsp[(3) - (4)].expr)); ··· 1742 1732 ;} 1743 1733 break; 1744 1734 1745 - case 44: 1735 + case 45: 1746 1736 1747 1737 { 1748 1738 menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,(yyvsp[(2) - (5)].symbol), (yyvsp[(3) - (5)].symbol)), (yyvsp[(4) - (5)].expr)); ··· 1750 1740 ;} 1751 1741 break; 1752 1742 1753 - case 47: 1743 + case 48: 1754 1744 1755 1745 { 1756 1746 struct kconf_id *id = kconf_id_lookup((yyvsp[(2) - (3)].string), strlen((yyvsp[(2) - (3)].string))); ··· 1762 1752 ;} 1763 1753 break; 1764 1754 1765 - case 48: 1755 + case 49: 1766 1756 1767 1757 { (yyval.string) = NULL; ;} 1768 1758 break; 1769 1759 1770 - case 49: 1760 + case 50: 1771 1761 1772 1762 { (yyval.string) = (yyvsp[(2) - (2)].string); ;} 1773 1763 break; 1774 1764 1775 - case 50: 1765 + case 51: 1776 1766 1777 1767 { 1778 1768 struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), SYMBOL_CHOICE); ··· 1783 1773 ;} 1784 1774 break; 1785 1775 1786 - case 51: 1776 + case 52: 1787 1777 1788 1778 { 1789 1779 (yyval.menu) = menu_add_menu(); 1790 1780 ;} 1791 1781 break; 1792 1782 1793 - case 52: 1783 + case 53: 1794 1784 1795 1785 { 1796 1786 if (zconf_endtoken((yyvsp[(1) - (1)].id), T_CHOICE, T_ENDCHOICE)) { ··· 1800 1790 ;} 1801 1791 break; 1802 1792 1803 - case 60: 1793 + case 61: 1804 1794 1805 1795 { 1806 1796 menu_add_prompt(P_PROMPT, (yyvsp[(2) - (4)].string), (yyvsp[(3) - (4)].expr)); ··· 1808 1798 ;} 1809 1799 break; 1810 1800 1811 - case 61: 1801 + case 62: 1812 1802 1813 1803 { 1814 1804 if ((yyvsp[(1) - (3)].id)->stype == S_BOOLEAN || (yyvsp[(1) - (3)].id)->stype == S_TRISTATE) { ··· 1821 1811 ;} 1822 1812 break; 1823 1813 1824 - case 62: 1814 + case 63: 1825 1815 1826 1816 { 1827 1817 current_entry->sym->flags |= SYMBOL_OPTIONAL; ··· 1829 1819 ;} 1830 1820 break; 1831 1821 1832 - case 63: 1822 + case 64: 1833 1823 1834 1824 { 1835 1825 if ((yyvsp[(1) - (4)].id)->stype == S_UNKNOWN) { ··· 1841 1831 ;} 1842 1832 break; 1843 1833 1844 - case 66: 1834 + case 67: 1845 1835 1846 1836 { 1847 1837 printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); ··· 1851 1841 ;} 1852 1842 break; 1853 1843 1854 - case 67: 1844 + case 68: 1855 1845 1856 1846 { 1857 1847 if (zconf_endtoken((yyvsp[(1) - (1)].id), T_IF, T_ENDIF)) { ··· 1861 1851 ;} 1862 1852 break; 1863 1853 1864 - case 73: 1854 + case 74: 1865 1855 1866 1856 { 1867 1857 menu_add_prompt(P_MENU, (yyvsp[(2) - (3)].string), NULL); 1868 1858 ;} 1869 1859 break; 1870 1860 1871 - case 74: 1861 + case 75: 1872 1862 1873 1863 { 1874 1864 menu_add_entry(NULL); ··· 1877 1867 ;} 1878 1868 break; 1879 1869 1880 - case 75: 1870 + case 76: 1881 1871 1882 1872 { 1883 1873 (yyval.menu) = menu_add_menu(); 1884 1874 ;} 1885 1875 break; 1886 1876 1887 - case 76: 1877 + case 77: 1888 1878 1889 1879 { 1890 1880 if (zconf_endtoken((yyvsp[(1) - (1)].id), T_MENU, T_ENDMENU)) { ··· 1894 1884 ;} 1895 1885 break; 1896 1886 1897 - case 82: 1887 + case 83: 1898 1888 1899 1889 { 1900 1890 printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), (yyvsp[(2) - (3)].string)); ··· 1902 1892 ;} 1903 1893 break; 1904 1894 1905 - case 83: 1895 + case 84: 1906 1896 1907 1897 { 1908 1898 menu_add_entry(NULL); ··· 1911 1901 ;} 1912 1902 break; 1913 1903 1914 - case 84: 1904 + case 85: 1915 1905 1916 1906 { 1917 1907 menu_end_entry(); 1918 1908 ;} 1919 1909 break; 1920 1910 1921 - case 85: 1911 + case 86: 1922 1912 1923 1913 { 1924 1914 printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); ··· 1926 1916 ;} 1927 1917 break; 1928 1918 1929 - case 86: 1919 + case 87: 1930 1920 1931 1921 { 1932 1922 current_entry->help = (yyvsp[(2) - (2)].string); 1933 1923 ;} 1934 1924 break; 1935 1925 1936 - case 91: 1926 + case 92: 1937 1927 1938 1928 { 1939 1929 menu_add_dep((yyvsp[(3) - (4)].expr)); ··· 1941 1931 ;} 1942 1932 break; 1943 1933 1944 - case 93: 1934 + case 96: 1935 + 1936 + { 1937 + menu_add_visibility((yyvsp[(2) - (2)].expr)); 1938 + ;} 1939 + break; 1940 + 1941 + case 98: 1945 1942 1946 1943 { 1947 1944 menu_add_prompt(P_PROMPT, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].expr)); 1948 1945 ;} 1949 1946 break; 1950 1947 1951 - case 96: 1952 - 1953 - { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1954 - break; 1955 - 1956 - case 97: 1957 - 1958 - { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1959 - break; 1960 - 1961 - case 98: 1962 - 1963 - { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1964 - break; 1965 - 1966 1948 case 101: 1967 1949 1968 - { (yyval.expr) = NULL; ;} 1950 + { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1969 1951 break; 1970 1952 1971 1953 case 102: 1972 1954 1973 - { (yyval.expr) = (yyvsp[(2) - (2)].expr); ;} 1955 + { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1974 1956 break; 1975 1957 1976 1958 case 103: 1977 1959 1978 - { (yyval.expr) = expr_alloc_symbol((yyvsp[(1) - (1)].symbol)); ;} 1979 - break; 1980 - 1981 - case 104: 1982 - 1983 - { (yyval.expr) = expr_alloc_comp(E_EQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); ;} 1984 - break; 1985 - 1986 - case 105: 1987 - 1988 - { (yyval.expr) = expr_alloc_comp(E_UNEQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); ;} 1960 + { (yyval.id) = (yyvsp[(1) - (2)].id); ;} 1989 1961 break; 1990 1962 1991 1963 case 106: 1992 1964 1993 - { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;} 1965 + { (yyval.expr) = NULL; ;} 1994 1966 break; 1995 1967 1996 1968 case 107: 1997 1969 1998 - { (yyval.expr) = expr_alloc_one(E_NOT, (yyvsp[(2) - (2)].expr)); ;} 1970 + { (yyval.expr) = (yyvsp[(2) - (2)].expr); ;} 1999 1971 break; 2000 1972 2001 1973 case 108: 2002 1974 2003 - { (yyval.expr) = expr_alloc_two(E_OR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;} 1975 + { (yyval.expr) = expr_alloc_symbol((yyvsp[(1) - (1)].symbol)); ;} 2004 1976 break; 2005 1977 2006 1978 case 109: 2007 1979 2008 - { (yyval.expr) = expr_alloc_two(E_AND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;} 1980 + { (yyval.expr) = expr_alloc_comp(E_EQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); ;} 2009 1981 break; 2010 1982 2011 1983 case 110: 2012 1984 2013 - { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), 0); free((yyvsp[(1) - (1)].string)); ;} 1985 + { (yyval.expr) = expr_alloc_comp(E_UNEQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); ;} 2014 1986 break; 2015 1987 2016 1988 case 111: 2017 1989 2018 - { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), SYMBOL_CONST); free((yyvsp[(1) - (1)].string)); ;} 1990 + { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;} 2019 1991 break; 2020 1992 2021 1993 case 112: 1994 + 1995 + { (yyval.expr) = expr_alloc_one(E_NOT, (yyvsp[(2) - (2)].expr)); ;} 1996 + break; 1997 + 1998 + case 113: 1999 + 2000 + { (yyval.expr) = expr_alloc_two(E_OR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;} 2001 + break; 2002 + 2003 + case 114: 2004 + 2005 + { (yyval.expr) = expr_alloc_two(E_AND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;} 2006 + break; 2007 + 2008 + case 115: 2009 + 2010 + { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), 0); free((yyvsp[(1) - (1)].string)); ;} 2011 + break; 2012 + 2013 + case 116: 2014 + 2015 + { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), SYMBOL_CONST); free((yyvsp[(1) - (1)].string)); ;} 2016 + break; 2017 + 2018 + case 117: 2022 2019 2023 2020 { (yyval.string) = NULL; ;} 2024 2021 break; ··· 2295 2278 case T_IF: return "if"; 2296 2279 case T_ENDIF: return "endif"; 2297 2280 case T_DEPENDS: return "depends"; 2281 + case T_VISIBLE: return "visible"; 2298 2282 } 2299 2283 return "<token>"; 2300 2284 }