Re: [PATCH -next] efs: fix -Wunused-const-variable= warning

From: Andrew Morton
Date: Wed Aug 02 2023 - 13:03:25 EST


On Wed, 2 Aug 2023 14:57:53 +0800 Zhu Wang <wangzhu9@xxxxxxxxxx> wrote:

> When building with W=1, the following warning occurs.
>
> In file included from fs/efs/super.c:18:0:
> fs/efs/efs.h:22:19: warning: ‘cprt’ defined but not used [-Wunused-const-variable=]
> static const char cprt[] = "EFS: "EFS_VERSION" - (c) 1999 Al Smith
> <Al.Smith@xxxxxxxxxxxxxxxx>";
> ^~~~
> The header file is included in many C files, there are many
> similar errors which are not included here. We add __maybe_unsed
> to remove it.
>
> ...
>
> --- a/fs/efs/efs.h
> +++ b/fs/efs/efs.h
> @@ -19,7 +19,8 @@
>
> #define EFS_VERSION "1.0a"
>
> -static const char cprt[] = "EFS: "EFS_VERSION" - (c) 1999 Al Smith <Al.Smith@xxxxxxxxxxxxxxxx>";
> +static const char __maybe_unused cprt[] =
> + "EFS: "EFS_VERSION" - (c) 1999 Al Smith <Al.Smith@xxxxxxxxxxxxxxxx>";
>
>
> /* 1 block is 512 bytes */

I don't know if Al is still around, but I added the Cc anyway.

cprt[] is unreferenced in fs/efs/*.c. I assume the intent here was to
embed the copyright strings in the generated binary. But this doesn't
work nowadays - the compiler/linker are removing this string entirely.

I guess the best approach is to move this copyright statement into a
comment as we do in many other places. See fs/ext2/acl.c for a random
example.