blob: b16b633a3bcd7f81125a48729fe3994550f5c4e0 [file] [log] [blame]
From de6425acaa50426883e85a599001ae5e927aec5b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 2 Mar 2023 16:23:56 -0800
Subject: [PATCH] pmempool: Match function prototypes of enum_to_str_fn
function pointer
This is flagged by clang 16+
common.c:844:4: error: cast from 'const char *(*)(enum chunk_type)' to 'enum_to_str_fn' (aka 'const char *(*)(int)') converts to incompatible function type [-Werror,-Wcast-function-type-strict]
(enum_to_str_fn)out_get_chunk_type_str);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
Upstream-Status: Submitted [https://github.com/pmem/pmdk/pull/5543]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/tools/pmempool/common.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/tools/pmempool/common.c b/src/tools/pmempool/common.c
index 5e7e472cc..4b7e9b95f 100644
--- a/src/tools/pmempool/common.c
+++ b/src/tools/pmempool/common.c
@@ -41,7 +41,7 @@
#define REQ_BUFF_SIZE 2048U
#define Q_BUFF_SIZE 8192
-typedef const char *(*enum_to_str_fn)(int);
+typedef const char *(*enum_to_str_fn)(enum chunk_type);
/*
* pmem_pool_type -- return pool type based on first two pages.
@@ -790,7 +790,7 @@ util_parse_enum(const char *str, int first, int max, uint64_t *bitmap,
enum_to_str_fn enum_to_str)
{
for (int i = first; i < max; i++) {
- if (strcmp(str, enum_to_str(i)) == 0) {
+ if (strcmp(str, enum_to_str((enum chunk_type)i)) == 0) {
*bitmap |= (uint64_t)1<<i;
return 0;
}
--
2.39.2