[dpdk-dev] [PATCH] eal: remove register from function parameter in headers
Stephen Hemminger
stephen at networkplumber.org
Sat May 9 01:25:05 CEST 2020
Compiling a C++ application that includes directly or indirectly
rte_common.h will cause a warning:
include/rte_common.h:350:37: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
rte_combine32ms1b(register uint32_t x)
C++ pickier than standard C and flags this antique usage.
This is a bugfix please apply to 20.05.
The register keyword is an old K&R legacy and should be removed
everywhere in DPDK. For now, fix it where it hurts.
Checkpatch should also be able to flag use of register keyword.
Fixes: 08f683174e94 ("eal: add functions for previous power of 2 alignment")
Cc: pbhagavatula at caviumnetworks.com
Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
---
lib/librte_eal/include/rte_common.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/librte_eal/include/rte_common.h b/lib/librte_eal/include/rte_common.h
index 668e8b0af87d..0843ce69e7ec 100644
--- a/lib/librte_eal/include/rte_common.h
+++ b/lib/librte_eal/include/rte_common.h
@@ -409,7 +409,7 @@ __extension__ typedef uint64_t RTE_MARKER64[0];
* The combined value.
*/
static inline uint32_t
-rte_combine32ms1b(register uint32_t x)
+rte_combine32ms1b(uint32_t x)
{
x |= x >> 1;
x |= x >> 2;
@@ -431,7 +431,7 @@ rte_combine32ms1b(register uint32_t x)
* The combined value.
*/
static inline uint64_t
-rte_combine64ms1b(register uint64_t v)
+rte_combine64ms1b(uint64_t v)
{
v |= v >> 1;
v |= v >> 2;
--
2.20.1
More information about the dev
mailing list