diff options
author | Roman Zippel <zippel@linux-m68k.org> | 2008-01-14 04:50:23 +0100 |
---|---|---|
committer | Sam Ravnborg <sam@ravnborg.org> | 2008-01-28 23:14:39 +0100 |
commit | 7a962923359768e04137125bd479fd0dfa6117d3 (patch) | |
tree | 9da466ba7ee1806bd40a53496533fc1f0ddd6cc2 /scripts/kconfig/confdata.c | |
parent | 0ffce8d94487abbd332cd36f98db61b7c8a3db3c (diff) |
kconfig: explicitly introduce expression list
Rename E_CHOICE to E_LIST to explicitly add support for expression
lists. Add a helper macro expr_list_for_each_sym to more easily iterate
over the list.
Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Diffstat (limited to 'scripts/kconfig/confdata.c')
-rw-r--r-- | scripts/kconfig/confdata.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c index 497a19e85a0..ee5fe943d58 100644 --- a/scripts/kconfig/confdata.c +++ b/scripts/kconfig/confdata.c @@ -312,7 +312,7 @@ load: int conf_read(const char *name) { - struct symbol *sym; + struct symbol *sym, *choice_sym; struct property *prop; struct expr *e; int i, flags; @@ -353,9 +353,9 @@ int conf_read(const char *name) */ prop = sym_get_choice_prop(sym); flags = sym->flags; - for (e = prop->expr; e; e = e->left.expr) - if (e->right.sym->visible != no) - flags &= e->right.sym->flags; + expr_list_for_each_sym(prop->expr, e, choice_sym) + if (choice_sym->visible != no) + flags &= choice_sym->flags; sym->flags &= flags | ~SYMBOL_DEF_USER; } |