[2/2] common/cnxk: add include for macro definition
Checks
Commit Message
The header file "roc_io.h" uses the "__plt_always_inline" macro but
don't include "roc_platform.h" to get the definition of it. This
inclusion is not necessary for compilation, but the lack of it can
confuse some indexers - such as those in eclipse, which reports the
lines:
"static __plt_always_inline uint64_t"
as possible definitions of a variable called "uint64_t". This confusion
leads to uint64_t being flagged as an unknown type in all other parts of
the project being indexed, e.g. across all of DPDK code.
Adding in the include of rte_common.h makes it clear to the indexer that
those lines are part of a function definition, and that allows eclipse
to correctly recognise uint64_t as a type from stdint.h
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/common/cnxk/roc_io.h | 2 ++
1 file changed, 2 insertions(+)
Comments
14/06/2022 14:29, Bruce Richardson:
> The header file "roc_io.h" uses the "__plt_always_inline" macro but
> don't include "roc_platform.h" to get the definition of it. This
> inclusion is not necessary for compilation, but the lack of it can
> confuse some indexers - such as those in eclipse, which reports the
> lines:
>
> "static __plt_always_inline uint64_t"
>
> as possible definitions of a variable called "uint64_t". This confusion
> leads to uint64_t being flagged as an unknown type in all other parts of
> the project being indexed, e.g. across all of DPDK code.
>
> Adding in the include of rte_common.h makes it clear to the indexer that
> those lines are part of a function definition, and that allows eclipse
> to correctly recognise uint64_t as a type from stdint.h
It is not rte_common.h
Looks like a copy past of the first patch.
On Wed, Jun 15, 2022 at 09:06:26AM +0200, Thomas Monjalon wrote:
> 14/06/2022 14:29, Bruce Richardson:
> > The header file "roc_io.h" uses the "__plt_always_inline" macro but
> > don't include "roc_platform.h" to get the definition of it. This
> > inclusion is not necessary for compilation, but the lack of it can
> > confuse some indexers - such as those in eclipse, which reports the
> > lines:
> >
> > "static __plt_always_inline uint64_t"
> >
> > as possible definitions of a variable called "uint64_t". This confusion
> > leads to uint64_t being flagged as an unknown type in all other parts of
> > the project being indexed, e.g. across all of DPDK code.
> >
> > Adding in the include of rte_common.h makes it clear to the indexer that
> > those lines are part of a function definition, and that allows eclipse
> > to correctly recognise uint64_t as a type from stdint.h
>
> It is not rte_common.h
> Looks like a copy past of the first patch.
>
Yes, it's a copy paste error. I got most instances replaced but missed one
(or at least I don't see a second miss).
@@ -5,6 +5,8 @@
#ifndef _ROC_IO_H_
#define _ROC_IO_H_
+#include "roc_platform.h" /* for __plt_always_inline macro */
+
#define ROC_LMT_BASE_ID_GET(lmt_addr, lmt_id) \
do { \
/* 32 Lines per core */ \