[arm-platforms:timers/tval-ectomy 2/17] drivers/clocksource/arm_arch_timer.c:156:3: warning: variable 'val' is used uninitialized whenever switch default is taken

Miguel Ojeda miguel.ojeda.sandonis at gmail.com
Sun Oct 10 03:54:46 PDT 2021


On Sun, Oct 10, 2021 at 11:37 AM Marc Zyngier <maz at kernel.org> wrote:
>
> I think the problem squarely lies with the compiler (or the
> way it interprets the BUILD_BUG helper). If it cannot see that
> BUILD_BUG() trumps the control flow analysis, then this warning
> is totally useless.

The fake, generated `__compiletime_assert` should be annotated
`__noreturn`. That gives enough information to the compiler to avoid
the warning: https://godbolt.org/z/x1v69jjYY

And we should also move `__compiletime_{error,warning}` to compiler
attributes since Clang trunk has it now, so that we catch the error
earlier: https://godbolt.org/z/jd8Eb9Mf1

I will send a couple patches.

Cheers,
Miguel



More information about the linux-arm-kernel mailing list