build: disable gcc 10 zero-length-bounds warning
authorKevin Traynor <ktraynor@redhat.com>
Thu, 14 May 2020 13:18:57 +0000 (14:18 +0100)
committerDavid Marchand <david.marchand@redhat.com>
Mon, 18 May 2020 11:54:36 +0000 (13:54 +0200)
commitcfacbcb5a23bc26cb913528c372adddabbb33ca1
treef3b46206bb9dfb0e2379cd6c3bfe20fc8597943e
parent572f2a90893d6ae63e01de830e4a18e27746c3e1
build: disable gcc 10 zero-length-bounds warning

gcc 10 issues warnings about the use of rearm_data marker
from struct rte_mbuf.

e.g.
../drivers/net/enic/enic_rxtx_vec_avx2.c: In function ‘rx_one’:
../drivers/net/enic/enic_rxtx_vec_avx2.c:21:2:
warning:
array subscript 0 is outside the bounds of an interior zero-length array
‘RTE_MARKER64’ {aka ‘long unsigned int[0]’} [-Wzero-length-bounds]
   21 |  *(uint64_t *)&mb->rearm_data = enic->mbuf_initializer;
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../lib/librte_mbuf/rte_mbuf.h:45,
                 from ../drivers/net/enic/enic_rxtx_vec_avx2.c:6:
../lib/librte_mbuf/rte_mbuf_core.h:484:15:
note: while referencing ‘rearm_data’
  484 |  RTE_MARKER64 rearm_data;
      |

Disable this warning for gcc 10 in order to allow v20.05 to build
without changes to struct rte_mbuf.

Bugzilla ID: 396
Cc: stable@dpdk.org
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
config/meson.build
mk/toolchain/gcc/rte.vars.mk