mirror of
https://github.com/hardkernel/linux.git
synced 2026-03-26 12:30:23 +09:00
ANDROID: libsubcmd: Hoist iterator variable declarations in parse_options_subcommand()
When applying HOSTCFLAGS to the libsubcmd build to resolve a separate issue, which contain '-std=gnu89' prior to commit1e24078113("Kbuild: use -std=gnu11 for KBUILD_USERCFLAGS"), the following warning/error occurs: parse-options.c:643:8: error: GCC does not allow variable declarations in for loop initializers before C99 [-Werror,-Wgcc-compat] for (int i = 0; subcommands[i]; i++) { ^ parse-options.c:669:9: error: GCC does not allow variable declarations in for loop initializers before C99 [-Werror,-Wgcc-compat] for (int i = 0; subcommands[i]; i++) ^ This issue was never visible upstream, as commit1e24078113("Kbuild: use -std=gnu11 for KBUILD_USERCFLAGS") was applied before commit13e07691a1("tools/resolve_btfids: Alter how HOSTCC is forced"). Prior to the latter change, there was no '-std=' flag passed to the libsubcmd build, so the default standard value was used, which may be newer than C99. To resolve this issue to unblock applying HOSTCFLAGS to libsubcmd, just hoist the declarations out of the for loops. Bug: 301145081 Change-Id: I41f17964f3d0822b026f6ae8f06a4d49bc7f15a9 Link: https://github.com/ClangBuiltLinux/linux/issues/1929 Signed-off-by: Nathan Chancellor <nathan@kernel.org>
This commit is contained in:
committed by
Treehugger Robot
parent
cc1046e3c7
commit
4aee33cbf4
@@ -637,10 +637,11 @@ int parse_options_subcommand(int argc, const char **argv, const struct option *o
|
||||
/* build usage string if it's not provided */
|
||||
if (subcommands && !usagestr[0]) {
|
||||
char *buf = NULL;
|
||||
int i;
|
||||
|
||||
astrcatf(&buf, "%s %s [<options>] {", subcmd_config.exec_name, argv[0]);
|
||||
|
||||
for (int i = 0; subcommands[i]; i++) {
|
||||
for (i = 0; subcommands[i]; i++) {
|
||||
if (i)
|
||||
astrcat(&buf, "|");
|
||||
astrcat(&buf, subcommands[i]);
|
||||
@@ -666,7 +667,9 @@ int parse_options_subcommand(int argc, const char **argv, const struct option *o
|
||||
exit(130);
|
||||
case PARSE_OPT_LIST_SUBCMDS:
|
||||
if (subcommands) {
|
||||
for (int i = 0; subcommands[i]; i++)
|
||||
int i;
|
||||
|
||||
for (i = 0; subcommands[i]; i++)
|
||||
printf("%s ", subcommands[i]);
|
||||
}
|
||||
putchar('\n');
|
||||
|
||||
Reference in New Issue
Block a user