diff mbox series

[1/1] vboxsf: fix building with GCC 15

Message ID 20250121162648.1408743-1-brahmajit.xyz@gmail.com (mailing list archive)
State New
Headers show
Series [1/1] vboxsf: fix building with GCC 15 | expand

Commit Message

Brahmajit Das Jan. 21, 2025, 4:26 p.m. UTC
Building with GCC 15 results in build error
fs/vboxsf/super.c:24:54: error: initializer-string for array of ‘unsigned char’ is too long [-Werror=unterminated-string-initialization]
   24 | static const unsigned char VBSF_MOUNT_SIGNATURE[4] = "\000\377\376\375";
      |                                                      ^~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Due to GCC having enabled -Werror=unterminated-string-initialization[0]
by default. Separately initializing each array element of
VBSF_MOUNT_SIGNATURE to ensure NUL termination, thus satisfying GCC 15
and fixing the build error.

[0]: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wno-unterminated-string-initialization

Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
---
 fs/vboxsf/super.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Hans de Goede Jan. 21, 2025, 4:28 p.m. UTC | #1
Hi,

On 21-Jan-25 5:26 PM, Brahmajit Das wrote:
> Building with GCC 15 results in build error
> fs/vboxsf/super.c:24:54: error: initializer-string for array of ‘unsigned char’ is too long [-Werror=unterminated-string-initialization]
>    24 | static const unsigned char VBSF_MOUNT_SIGNATURE[4] = "\000\377\376\375";
>       |                                                      ^~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> Due to GCC having enabled -Werror=unterminated-string-initialization[0]
> by default. Separately initializing each array element of
> VBSF_MOUNT_SIGNATURE to ensure NUL termination, thus satisfying GCC 15
> and fixing the build error.
> 
> [0]: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wno-unterminated-string-initialization
> 
> Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>

Thanks, patch looks good to me:

Reviewed-by: Hans de Goede <hdegoede@redhat.com>

Regards,

Hans



> ---
>  fs/vboxsf/super.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/vboxsf/super.c b/fs/vboxsf/super.c
> index e95b8a48d8a0..1d94bb784108 100644
> --- a/fs/vboxsf/super.c
> +++ b/fs/vboxsf/super.c
> @@ -21,7 +21,8 @@
>  
>  #define VBOXSF_SUPER_MAGIC 0x786f4256 /* 'VBox' little endian */
>  
> -static const unsigned char VBSF_MOUNT_SIGNATURE[4] = "\000\377\376\375";
> +static const unsigned char VBSF_MOUNT_SIGNATURE[4] = { '\000', '\377', '\376',
> +						       '\375' };
>  
>  static int follow_symlinks;
>  module_param(follow_symlinks, int, 0444);
Christian Brauner Jan. 22, 2025, 12:54 p.m. UTC | #2
On Tue, 21 Jan 2025 21:56:48 +0530, Brahmajit Das wrote:
> Building with GCC 15 results in build error
> fs/vboxsf/super.c:24:54: error: initializer-string for array of ‘unsigned char’ is too long [-Werror=unterminated-string-initialization]
>    24 | static const unsigned char VBSF_MOUNT_SIGNATURE[4] = "\000\377\376\375";
>       |                                                      ^~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> Due to GCC having enabled -Werror=unterminated-string-initialization[0]
> by default. Separately initializing each array element of
> VBSF_MOUNT_SIGNATURE to ensure NUL termination, thus satisfying GCC 15
> and fixing the build error.
> 
> [...]

Applied to the vfs.fixes branch of the vfs/vfs.git tree.
Patches in the vfs.fixes branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs.fixes

[1/1] vboxsf: fix building with GCC 15
      https://git.kernel.org/vfs/vfs/c/48a26e63b8af
diff mbox series

Patch

diff --git a/fs/vboxsf/super.c b/fs/vboxsf/super.c
index e95b8a48d8a0..1d94bb784108 100644
--- a/fs/vboxsf/super.c
+++ b/fs/vboxsf/super.c
@@ -21,7 +21,8 @@ 
 
 #define VBOXSF_SUPER_MAGIC 0x786f4256 /* 'VBox' little endian */
 
-static const unsigned char VBSF_MOUNT_SIGNATURE[4] = "\000\377\376\375";
+static const unsigned char VBSF_MOUNT_SIGNATURE[4] = { '\000', '\377', '\376',
+						       '\375' };
 
 static int follow_symlinks;
 module_param(follow_symlinks, int, 0444);