kconfig: error out when seeing recursive dependency

Originally, recursive dependency was a fatal error for Kconfig
because Kconfig cannot compute symbol values in such a situation.

Commit d595cea624 ("kconfig: print more info when we see a recursive
dependency") changed it to a warning, which I guess was not intentional.

Get it back to an error again.

Also, rename the unit test directory "warn_recursive_dep" to
"err_recursive_dep" so that it matches to the behavior.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Tested-by: Dirk Gouders <dirk@gouders.net>
This commit is contained in:
Masahiro Yamada 2018-08-15 14:59:43 +09:00
parent 4bf6a9af0e
commit f1575595d1
5 changed files with 10 additions and 12 deletions

View File

@ -1248,9 +1248,6 @@ struct symbol *sym_check_deps(struct symbol *sym)
sym->flags &= ~SYMBOL_CHECK;
}
if (sym2 && sym2 == sym)
sym2 = NULL;
return sym2;
}

View File

@ -0,0 +1,10 @@
# SPDX-License-Identifier: GPL-2.0
"""
Detect recursive dependency error.
Recursive dependency should be treated as an error.
"""
def test(conf):
assert conf.oldaskconfig() == 1
assert conf.stderr_contains('expected_stderr')

View File

@ -1,9 +0,0 @@
"""
Warn recursive inclusion.
Recursive dependency should be warned.
"""
def test(conf):
assert conf.oldaskconfig() == 0
assert conf.stderr_contains('expected_stderr')