[dpdk-dev] [PATCH v2 2/3] hash: fix header for C++

Thomas Monjalon thomas.monjalon at 6wind.com
Tue Feb 16 08:14:24 CET 2016


When built in a C++ application, the jhash include fails:

rte_jhash.h:123:22: error:
invalid conversion from ‘const void*’ to ‘const uint32_t*’ [-fpermissive]
  const uint32_t *k = key;
                      ^
The cast must be explicit for C++.

Fixes: 8718219a8737 ("hash: add new jhash functions")

Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>
---
 lib/librte_hash/rte_jhash.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_hash/rte_jhash.h b/lib/librte_hash/rte_jhash.h
index 457f225..207478c 100644
--- a/lib/librte_hash/rte_jhash.h
+++ b/lib/librte_hash/rte_jhash.h
@@ -120,7 +120,7 @@ __rte_jhash_2hashes(const void *key, uint32_t length, uint32_t *pc,
 	 * If check_align is not set, first case will be used
 	 */
 #if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686) || defined(RTE_ARCH_X86_X32)
-	const uint32_t *k = key;
+	const uint32_t *k = (const uint32_t *)key;
 	const uint32_t s = 0;
 #else
 	const uint32_t *k = (uint32_t *)((uintptr_t)key & (uintptr_t)~3);
-- 
2.7.0



More information about the dev mailing list