kconfig: stop supporting '.' and '/' in unquoted words
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Tue, 11 Dec 2018 11:01:05 +0000 (20:01 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Fri, 21 Dec 2018 15:25:54 +0000 (00:25 +0900)
In my understanding, special characters such as '.' and '/' are
supported in unquoted words to use bare file paths in the "source"
statement.

With the previous commit surrounding all file paths with double
quotes, we can drop this.

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

index 5ca2df790d3cfa5f4253a33a303219aaa8fc4394..b028a48b0e761f491f90e29df43b6975f5a0a757 100644 (file)
@@ -555,8 +555,7 @@ char *expand_string(const char *in)
 
 static bool is_end_of_token(char c)
 {
-       /* Why are '.' and '/' valid characters for symbols? */
-       return !(isalnum(c) || c == '_' || c == '-' || c == '.' || c == '/');
+       return !(isalnum(c) || c == '_' || c == '-');
 }
 
 /*
index f8bd84714e0008b3abf54483b275bf6297b418fc..90d2f37159dc58b552187d12ba60c315f07088d6 100644 (file)
@@ -160,7 +160,7 @@ n   [A-Za-z0-9_-]
                BEGIN(STRING);
        }
        \n      BEGIN(INITIAL); return T_EOL;
-       ({n}|[/.])+     {
+       {n}+    {
                const struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
                if (id && id->flags & TF_PARAM) {
                        yylval.id = id;
@@ -170,7 +170,7 @@ n   [A-Za-z0-9_-]
                yylval.string = text;
                return T_WORD;
        }
-       ({n}|[/.$])+    {
+       ({n}|$)+        {
                /* this token includes at least one '$' */
                yylval.string = expand_token(yytext, yyleng);
                if (strlen(yylval.string))