Some compilers (i.e Intel icc) do not recognize GCC diagnostic pragma, the compiler check is added.
Fixes: a46a42b5cd03 ("net/mlx5: add VF LAG mode bonding device recognition") Signed-off-by: Viacheslav Ovsiienko <viachesl...@mellanox.com> --- drivers/net/mlx5/mlx5.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c index 951b9f5..7a3f654 100644 --- a/drivers/net/mlx5/mlx5.c +++ b/drivers/net/mlx5/mlx5.c @@ -2296,11 +2296,15 @@ struct mlx5_dev_spawn_data { if (!file) return -1; MKSTR(format, "%c%us", '%', (unsigned int)(sizeof(ifname) - 1)); - - /* Use safe format to check maximal buffer length. */ +#if defined(RTE_TOOLCHAIN_GCC) && (GCC_VERSION >= 40600) +#pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wformat-nonliteral" +#endif + /* Use safe format to check maximal buffer length. */ while (fscanf(file, format, ifname) == 1) { -#pragma GCC diagnostic error "-Wformat-nonliteral" +#if defined(RTE_TOOLCHAIN_GCC) && (GCC_VERSION >= 40600) +#pragma GCC diagnostic pop +#endif char tmp_str[IF_NAMESIZE + 32]; struct rte_pci_addr pci_addr; struct mlx5_switch_info info; -- 1.8.3.1