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