kconfig: stop associating kconf_id with yylval
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Tue, 11 Dec 2018 11:01:07 +0000 (20:01 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Fri, 21 Dec 2018 15:25:55 +0000 (00:25 +0900)
The lexer has conventionally associated kconf_id data with yylval
to carry additional information to the parser.

No token is relying on this any more.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
scripts/kconfig/zconf.l
scripts/kconfig/zconf.y

index 90d2f37159dc58b552187d12ba60c315f07088d6..ed0d0a3b0d6246a0984a38dd50b2abd4e2167c55 100644 (file)
@@ -104,7 +104,6 @@ n   [A-Za-z0-9_-]
                current_pos.lineno = yylineno;
                if (id && id->flags & TF_COMMAND) {
                        BEGIN(PARAM);
-                       yylval.id = id;
                        return id->token;
                }
                alloc_string(yytext, yyleng);
@@ -163,7 +162,6 @@ n   [A-Za-z0-9_-]
        {n}+    {
                const struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
                if (id && id->flags & TF_PARAM) {
-                       yylval.id = id;
                        return id->token;
                }
                alloc_string(yytext, yyleng);
index 71c2fe737e37b3c282bdd38ed19134d06d647be5..3a3ada6f07294e27bc51cc50c87ca395f29ee146 100644 (file)
@@ -40,50 +40,49 @@ static struct menu *current_menu, *current_entry;
        struct symbol *symbol;
        struct expr *expr;
        struct menu *menu;
-       const struct kconf_id *id;
        enum symbol_type type;
        enum variable_flavor flavor;
 }
 
-%token <id>T_MAINMENU
-%token <id>T_MENU
-%token <id>T_ENDMENU
-%token <id>T_SOURCE
-%token <id>T_CHOICE
-%token <id>T_ENDCHOICE
-%token <id>T_COMMENT
-%token <id>T_CONFIG
-%token <id>T_MENUCONFIG
-%token <id>T_HELP
 %token <string> T_HELPTEXT
-%token <id>T_IF
-%token <id>T_ENDIF
-%token <id>T_DEPENDS
-%token <id>T_OPTIONAL
-%token <id>T_PROMPT
-%token <id>T_SELECT
-%token <id>T_IMPLY
-%token <id>T_RANGE
-%token <id>T_VISIBLE
-%token <id>T_ON
 %token <string> T_WORD
 %token <string> T_WORD_QUOTE
 %token T_ALLNOCONFIG_Y
 %token T_BOOL
+%token T_CHOICE
 %token T_CLOSE_PAREN
 %token T_COLON_EQUAL
+%token T_COMMENT
+%token T_CONFIG
 %token T_DEFAULT
 %token T_DEFCONFIG_LIST
 %token T_DEF_BOOL
 %token T_DEF_TRISTATE
+%token T_DEPENDS
+%token T_ENDCHOICE
+%token T_ENDIF
+%token T_ENDMENU
+%token T_HELP
 %token T_HEX
+%token T_IF
+%token T_IMPLY
 %token T_INT
+%token T_MAINMENU
+%token T_MENU
+%token T_MENUCONFIG
 %token T_MODULES
+%token T_ON
 %token T_OPEN_PAREN
 %token T_OPTION
+%token T_OPTIONAL
 %token T_PLUS_EQUAL
+%token T_PROMPT
+%token T_RANGE
+%token T_SELECT
+%token T_SOURCE
 %token T_STRING
 %token T_TRISTATE
+%token T_VISIBLE
 %token T_EOL
 %token <string> T_ASSIGN_VAL