Even in C11, using types other than _Bool or signed/unsigned int for bit-fields is an extension. Some GCC versions complain about that when -pedantic checks are enabled.
The RTE_STD_C11 macro correctly prevented this issue with C99 but not with C11 as it becomes a no-op. Forcing the extension keyword addresses it. Fixes: 143c03925695 ("net/mlx: update C compliance standard") Signed-off-by: Adrien Mazarguil <adrien.mazarg...@6wind.com> Tested-by: Yongseok Koh <ys...@mellanox.com> --- Ferruh, squashing this commit with the previous one and discarding its log is fine if you want. Thanks. --- drivers/net/mlx5/mlx5_rxtx.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h index 450a569..4195665 100644 --- a/drivers/net/mlx5/mlx5_rxtx.h +++ b/drivers/net/mlx5/mlx5_rxtx.h @@ -240,7 +240,7 @@ struct hash_rxq { }; /* TX queue descriptor. */ -RTE_STD_C11 +__extension__ struct txq { uint16_t elts_head; /* Current index in (*elts)[]. */ uint16_t elts_tail; /* First element awaiting completion. */ -- 2.1.4