kconfig: display recursive dependency resolution hint just once
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Fri, 15 Dec 2017 15:28:42 +0000 (00:28 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Sat, 16 Dec 2017 02:12:53 +0000 (11:12 +0900)
commite3b03bf29d6b99fab7001fb20c33fe54928c157a
treec8f948c35a87620abb4fb7c0d5ebd0905b3b7b48
parentf77850d3fe0c962fa98dff5a690723c0883a530b
kconfig: display recursive dependency resolution hint just once

Commit 1c199f2878f6 ("kbuild: document recursive dependency limitation
/ resolution") probably intended to show a hint along with "recursive
dependency detected!" error, but it missed to add {...} guard, and the
hint is displayed in every loop of the dep_stack traverse, annoyingly.

This error was detected by GCC's -Wmisleading-indentation when switching
to build-time generation of lexer/parser.

scripts/kconfig/symbol.c: In function ‘sym_check_print_recursive’:
scripts/kconfig/symbol.c:1150:3: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
   if (stack->sym == last_sym)
   ^~
scripts/kconfig/symbol.c:1153:4: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    fprintf(stderr, "For a resolution refer to Documentation/kbuild/kconfig-language.txt\n");
    ^~~~~~~

I could simply add {...} to surround the three fprintf(), but I rather
chose to move the hint after the loop to make the whole message readable.

Fixes: 1c199f2878f6 ("kbuild: document recursive dependency limitation / resolution"
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Luis R. Rodriguez <mcgrof@kernel.org>
scripts/kconfig/symbol.c