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

Reply via email to