kconfig: stop supporting '.' and '/' in unquoted words
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Tue, 11 Dec 2018 11:01:05 +0000 (20:01 +0900)
committerChristian Lamparter <chunkeey@gmail.com>
Sun, 10 Feb 2019 21:32:15 +0000 (22:32 +0100)
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>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
config/preprocess.c
config/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 eec4a5a97639d509104da10d367e95fa9039eadd..3d8d8619153c966458eaa44dcf9363a0a6448955 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))