Re: [PATCH 15/17] arch: fix asm-offsets.c building with -Wmissing-prototypes
From: Masahiro Yamada
Date: Fri Aug 11 2023 - 18:13:00 EST
On Sat, Aug 12, 2023 at 3:30 AM Arnd Bergmann <arnd@xxxxxxxxxx> wrote:
>
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> When -Wmissing-prototypes is enabled, the some asm-offsets.c files fail
> to build, even when this warning is disabled in the Makefile for normal
> files:
>
> arch/sparc/kernel/asm-offsets.c:22:5: error: no previous prototype for 'sparc32_foo' [-Werror=missing-prototypes]
> arch/sparc/kernel/asm-offsets.c:48:5: error: no previous prototype for 'foo' [-Werror=missing-prototypes]
>
> Address this by making use of the same trick we have on other architectures,
> renaming the unused global function to main(), which has an implicit
> prototype.
main() only works for one function call, but
there are some cases where splitting the code
into some functions makes the code cleaner.
> On loongarch, there are many functions in this file, so the trick does
> not work, adding explicit declarations works around it in a slightly
> more ugly way but is the best I could come up with here.
I do not like repeating the function names.
Could you try "static + __used" as in
arch/x86/kernel/asm-offsets.c ?
--
Best Regards
Masahiro Yamada