Re: linux-next: build failure after merge of the drivers-x86 tree

From: M D
Date: Fri Aug 20 2021 - 03:31:53 EST


On Fri, Aug 20, 2021 at 1:00 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the drivers-x86 tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> drivers/platform/x86/ideapad-laptop.c: In function 'ideapad_wmi_notify':
> drivers/platform/x86/ideapad-laptop.c:1469:3: error: a label can only be part of a statement and a declaration is not a statement
> 1469 | unsigned long result;
> | ^~~~~~~~
>
> Caused by commit
>
> 18cfd76e7b84 ("ideapad-laptop: Fix Legion 5 Fn lock LED")
>
> I have used the drivers-x86 tree from next-20210819 for today.
>
> --
> Cheers,
> Stephen Rothwell

Hi Stephen,

Thanks for your work!

This error occurs because only a statement is allowed after a label,
but a definition is not a statement in C99.
This can be fixed by wrapping the case block with curly braces like this:
case 208: {
...
}

However I don't know why my compiler did not report this error. I was
using gcc 11.1.0 under Arch Linux.

Regards,
Meng Dong