[PATCH 11/30] kconfig: begin PARAM state only when seeing a command keyword

2018-04-12 Thread Masahiro Yamada
Currently, any statement line starts with a keyword with TF_COMMAND
flag.  So, the following three lines are dead code.

alloc_string(yytext, yyleng);
zconflval.string = text;
return T_WORD;

If a T_WORD token is returned in this context, it will cause syntax
error in the parser anyway.

The next commit will support the assignment statement where a line
starts with an arbitrary identifier.  So, I want the lexer to switch
to the PARAM state only when it sees a command keyword.

Signed-off-by: Masahiro Yamada 
---

Changes in v3: None
Changes in v2: None

 scripts/kconfig/zconf.l | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/kconfig/zconf.l b/scripts/kconfig/zconf.l
index 9dc5fe3..5e53348 100644
--- a/scripts/kconfig/zconf.l
+++ b/scripts/kconfig/zconf.l
@@ -102,10 +102,10 @@ n [A-Za-z0-9_-]
 {
{n}+{
const struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
-   BEGIN(PARAM);
current_pos.file = current_file;
current_pos.lineno = yylineno;
if (id && id->flags & TF_COMMAND) {
+   BEGIN(PARAM);
yylval.id = id;
return id->token;
}
-- 
2.7.4



[PATCH 11/30] kconfig: begin PARAM state only when seeing a command keyword

2018-04-12 Thread Masahiro Yamada
Currently, any statement line starts with a keyword with TF_COMMAND
flag.  So, the following three lines are dead code.

alloc_string(yytext, yyleng);
zconflval.string = text;
return T_WORD;

If a T_WORD token is returned in this context, it will cause syntax
error in the parser anyway.

The next commit will support the assignment statement where a line
starts with an arbitrary identifier.  So, I want the lexer to switch
to the PARAM state only when it sees a command keyword.

Signed-off-by: Masahiro Yamada 
---

Changes in v3: None
Changes in v2: None

 scripts/kconfig/zconf.l | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/kconfig/zconf.l b/scripts/kconfig/zconf.l
index 9dc5fe3..5e53348 100644
--- a/scripts/kconfig/zconf.l
+++ b/scripts/kconfig/zconf.l
@@ -102,10 +102,10 @@ n [A-Za-z0-9_-]
 {
{n}+{
const struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
-   BEGIN(PARAM);
current_pos.file = current_file;
current_pos.lineno = yylineno;
if (id && id->flags & TF_COMMAND) {
+   BEGIN(PARAM);
yylval.id = id;
return id->token;
}
-- 
2.7.4