[dpdk-stable] [PATCH] eal/windows: fix token pasting build warning
Dmitry Kozlyuk
dmitry.kozliuk at gmail.com
Wed Sep 15 21:25:14 CEST 2021
2021-09-13 19:55 (UTC+0300), Tal Shnaiderman:
> When building DPDK on Windows in debug mode the following
> warning appear:
>
> warning: token pasting of ',' and __VA_ARGS__ is a GNU extension
> [-Wgnu-zero-variadic-macro-arguments] #define open(path, flags, ...)
> _open(path, flags, ##__VA_ARGS__)
>
> Modified the 'open' macro to avoid it.
Nit: "Modify" (present tense should be used here).
>
> Fixes: 45d62067c237 ("eal: make OS shims internal")
> Cc: stable at dpdk.org
>
> Signed-off-by: Tal Shnaiderman <talshn at nvidia.com>
> ---
> lib/eal/windows/include/rte_os_shim.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/eal/windows/include/rte_os_shim.h b/lib/eal/windows/include/rte_os_shim.h
> index 33619745ab..eda8113662 100644
> --- a/lib/eal/windows/include/rte_os_shim.h
> +++ b/lib/eal/windows/include/rte_os_shim.h
> @@ -25,7 +25,7 @@
> #define strncasecmp(s1, s2, count) _strnicmp(s1, s2, count)
> #endif
>
> -#define open(path, flags, ...) _open(path, flags, ##__VA_ARGS__)
> +#define open(...) _open(__VA_ARGS__)
> #define read(fd, buf, n) _read(fd, buf, n)
> #define write(fd, buf, n) _write(fd, buf, n)
> #define close(fd) _close(fd)
Note: Three-argument form of open() is seldom used in DPDK and only once
in OS-independent code. However, rte_os_shim.h can be included
in platform-specific file and it should not prevent using 3-argument open().
This patch is probably the most simple and robust thing we can do.
Acked-by: Dmitry Kozlyuk <dmitry.kozliuk at gmail.com>
More information about the stable
mailing list