summaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/zconf.l
diff options
context:
space:
mode:
authorRoman Zippel <zippel@linux-m68k.org>2005-11-09 06:34:52 +0100
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-09 16:55:54 +0100
commit3370f9f0d9c7d14bf71aab27fa45c0537f130614 (patch)
treed1fb9b98aabf5fb6dd4e68c1dc69eb345f0c7f60 /scripts/kconfig/zconf.l
parent[PATCH] kconfig: use gperf for kconfig keywords (diff)
downloadlinux-3370f9f0d9c7d14bf71aab27fa45c0537f130614.tar.xz
linux-3370f9f0d9c7d14bf71aab27fa45c0537f130614.zip
[PATCH] kconfig: simplify symbol type parsing
This simplifies the parser a bit by merging the various symbol types into a single token and adds the type to the keyword hash. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Cc: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'scripts/kconfig/zconf.l')
-rw-r--r--scripts/kconfig/zconf.l5
1 files changed, 4 insertions, 1 deletions
diff --git a/scripts/kconfig/zconf.l b/scripts/kconfig/zconf.l
index ec902091be97..cfcfabd7a069 100644
--- a/scripts/kconfig/zconf.l
+++ b/scripts/kconfig/zconf.l
@@ -90,6 +90,7 @@ n [A-Za-z0-9_]
struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
if (id && id->flags & TF_COMMAND) {
BEGIN(PARAM);
+ zconflval.id = id;
return id->token;
}
alloc_string(yytext, yyleng);
@@ -117,8 +118,10 @@ n [A-Za-z0-9_]
--- /* ignore */
({n}|[-/.])+ {
struct kconf_id *id = kconf_id_lookup(yytext, yyleng);
- if (id && id->flags & TF_PARAM)
+ if (id && id->flags & TF_PARAM) {
+ zconflval.id = id;
return id->token;
+ }
alloc_string(yytext, yyleng);
zconflval.string = text;
return T_WORD;