diff options
-rw-r--r-- | scripts/kconfig/confdata.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c index e0f402f3b75d..2eccefb03a93 100644 --- a/scripts/kconfig/confdata.c +++ b/scripts/kconfig/confdata.c | |||
@@ -232,8 +232,7 @@ load: | |||
232 | sym->type = S_BOOLEAN; | 232 | sym->type = S_BOOLEAN; |
233 | } | 233 | } |
234 | if (sym->flags & def_flags) { | 234 | if (sym->flags & def_flags) { |
235 | conf_warning("trying to reassign symbol %s", sym->name); | 235 | conf_warning("override: reassigning to symbol %s", sym->name); |
236 | break; | ||
237 | } | 236 | } |
238 | switch (sym->type) { | 237 | switch (sym->type) { |
239 | case S_BOOLEAN: | 238 | case S_BOOLEAN: |
@@ -272,8 +271,7 @@ load: | |||
272 | sym->type = S_OTHER; | 271 | sym->type = S_OTHER; |
273 | } | 272 | } |
274 | if (sym->flags & def_flags) { | 273 | if (sym->flags & def_flags) { |
275 | conf_warning("trying to reassign symbol %s", sym->name); | 274 | conf_warning("override: reassigning to symbol %s", sym->name); |
276 | break; | ||
277 | } | 275 | } |
278 | if (conf_set_sym_val(sym, def, def_flags, p)) | 276 | if (conf_set_sym_val(sym, def, def_flags, p)) |
279 | continue; | 277 | continue; |
@@ -297,11 +295,9 @@ load: | |||
297 | } | 295 | } |
298 | break; | 296 | break; |
299 | case yes: | 297 | case yes: |
300 | if (cs->def[def].tri != no) { | 298 | if (cs->def[def].tri != no) |
301 | conf_warning("%s creates inconsistent choice state", sym->name); | 299 | conf_warning("override: %s changes choice state", sym->name); |
302 | cs->flags &= ~def_flags; | 300 | cs->def[def].val = sym; |
303 | } else | ||
304 | cs->def[def].val = sym; | ||
305 | break; | 301 | break; |
306 | } | 302 | } |
307 | cs->def[def].tri = E_OR(cs->def[def].tri, sym->def[def].tri); | 303 | cs->def[def].tri = E_OR(cs->def[def].tri, sym->def[def].tri); |