Loop initial declarations are only allowed in C99 mode, which causes a compilation failure on non C99 compliant systems:
test/test/test_external_mem.c: In function ‘test_external_mem’: test/test/test_external_mem.c:375:2: error: ‘for’ loop initial declarations are only allowed in C99 mode for (int i = 0; i < n_pages; i++) { ^ Reproduces on RHEL 7.4 with GCC 4.8.5 20150623 (Red Hat 4.8.5-16). Fixes: b270daa43b3d ("test: support external memory") Cc: anatoly.bura...@intel.com Signed-off-by: Ali Alnubani <alia...@mellanox.com> --- test/test/test_external_mem.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test/test_external_mem.c b/test/test/test_external_mem.c index d0837aa35..d740960ce 100644 --- a/test/test/test_external_mem.c +++ b/test/test/test_external_mem.c @@ -361,7 +361,7 @@ test_external_mem(void) size_t pgsz = RTE_PGSIZE_4K; rte_iova_t iova[len / pgsz]; void *addr; - int ret, n_pages; + int ret, n_pages, i; /* create external memory area */ n_pages = RTE_DIM(iova); @@ -372,7 +372,7 @@ test_external_mem(void) __func__, __LINE__); return -1; } - for (int i = 0; i < n_pages; i++) { + for (i = 0; i < n_pages; i++) { /* arbitrary IOVA */ rte_iova_t tmp = 0x100000000 + i * pgsz; iova[i] = tmp; -- 2.19.1