| 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 |
| |