File kmod-build-cure-compiler-warnings-showing-up-externa.patch of Package kmod.11265
From 867da6fcfb003eb20ae54650f004382325813db6 Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jengelh@inai.de>
Date: Sat, 16 Jun 2018 08:45:20 +0200
Subject: [PATCH] kmod: build: cure compiler warnings showing up externally
References: bsc#1097869
Patch-mainline: v26
Git-commit: 867da6fcfb003eb20ae54650f004382325813db6
When building a C source file with gcc-7 -Wshift-overflow=2, this warning
springs up:
libkmod.h: warning: result of "1 << 31" requires 33 bits to
represent, but "int" only has 32 bits [-Wshift-overflow=]
Change the two _KMOD_* identifiers to fit into 32 bits.
---
libkmod/libkmod.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libkmod/libkmod.h b/libkmod/libkmod.h
index f9e33c6cde90..352627e5d018 100644
--- a/libkmod/libkmod.h
+++ b/libkmod/libkmod.h
@@ -72,7 +72,7 @@ enum kmod_index {
KMOD_INDEX_MODULES_SYMBOL,
KMOD_INDEX_MODULES_BUILTIN,
/* Padding to make sure enum is not mapped to char */
- _KMOD_INDEX_PAD = (1 << 31),
+ _KMOD_INDEX_PAD = 1U << 31,
};
int kmod_dump_index(struct kmod_ctx *ctx, enum kmod_index type, int fd);
@@ -211,7 +211,7 @@ enum kmod_module_initstate {
KMOD_MODULE_COMING,
KMOD_MODULE_GOING,
/* Padding to make sure enum is not mapped to char */
- _KMOD_MODULE_PAD = (1 << 31),
+ _KMOD_MODULE_PAD = 1U << 31,
};
const char *kmod_module_initstate_str(enum kmod_module_initstate state);
int kmod_module_get_initstate(const struct kmod_module *mod);
--
2.20.1