-rw-r--r-- | scripts/kconfig/zconf.y | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/scripts/kconfig/zconf.y b/scripts/kconfig/zconf.y index c3f1bd0..996b10a 100644 --- a/scripts/kconfig/zconf.y +++ b/scripts/kconfig/zconf.y @@ -166,147 +166,145 @@ config_option: T_PROMPT prompt if_expr { menu_add_prop(P_PROMPT, $2, NULL, $3); printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); }; config_option: T_DEFAULT symbol if_expr { menu_add_prop(P_DEFAULT, NULL, $2, $3); printd(DEBUG_PARSE, "%s:%d:default\n", zconf_curname(), zconf_lineno()); }; /* choice entry */ choice: T_CHOICE { struct symbol *sym = sym_lookup(NULL, 0); sym->flags |= SYMBOL_CHOICE; menu_add_entry(sym); menu_add_prop(P_CHOICE, NULL, NULL, NULL); printd(DEBUG_PARSE, "%s:%d:choice\n", zconf_curname(), zconf_lineno()); }; choice_entry: choice T_EOL choice_option_list { menu_end_entry(); menu_add_menu(); }; choice_end: end { if (zconf_endtoken($1, T_CHOICE, T_ENDCHOICE)) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); } }; choice_stmt: choice_entry choice_block choice_end T_EOL | choice_entry choice_block { printf("%s:%d: missing 'endchoice' for this 'choice' statement\n", current_menu->file->name, current_menu->lineno); zconfnerrs++; }; choice_option_list: /* empty */ | choice_option_list choice_option T_EOL | choice_option_list depends T_EOL | choice_option_list help | choice_option_list T_EOL ; choice_option: T_PROMPT prompt if_expr { menu_add_prop(P_PROMPT, $2, NULL, $3); printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); }; choice_option: T_OPTIONAL { current_entry->sym->flags |= SYMBOL_OPTIONAL; printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); }; -choice_option: T_DEFAULT symbol +choice_option: T_DEFAULT symbol if_expr { - menu_add_prop(P_DEFAULT, NULL, $2, NULL); - //current_choice->prop->def = $2; + menu_add_prop(P_DEFAULT, NULL, $2, $3); printd(DEBUG_PARSE, "%s:%d:default\n", zconf_curname(), zconf_lineno()); }; choice_block: /* empty */ | choice_block common_block ; /* if entry */ if: T_IF expr { printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); menu_add_entry(NULL); - //current_entry->prompt = menu_add_prop(T_IF, NULL, NULL, $2); menu_add_dep($2); menu_end_entry(); menu_add_menu(); }; if_end: end { if (zconf_endtoken($1, T_IF, T_ENDIF)) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); } }; if_stmt: if T_EOL if_block if_end T_EOL | if T_EOL if_block { printf("%s:%d: missing 'endif' for this 'if' statement\n", current_menu->file->name, current_menu->lineno); zconfnerrs++; }; if_block: /* empty */ | if_block common_block | if_block menu_stmt | if_block choice_stmt ; /* menu entry */ menu: T_MENU prompt { menu_add_entry(NULL); menu_add_prop(P_MENU, $2, NULL, NULL); printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); }; menu_entry: menu T_EOL depends_list { menu_end_entry(); menu_add_menu(); }; menu_end: end { if (zconf_endtoken($1, T_MENU, T_ENDMENU)) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); } }; menu_stmt: menu_entry menu_block menu_end T_EOL | menu_entry menu_block { printf("%s:%d: missing 'endmenu' for this 'menu' statement\n", current_menu->file->name, current_menu->lineno); zconfnerrs++; }; menu_block: /* empty */ | menu_block common_block | menu_block menu_stmt | menu_block choice_stmt |