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