What is the compiler warning flag for zero variadic macro arguments in GCC (I am using GCC 5.3.0)?
The warning is triggered by code like this
// for illustration purposes only:
int foo(int i) { return 0; };
#define FOO(A, ...) foo(A, ##__VA_ARGS__)
FOO(1);
^ warning: ISO C++11 requires at least one argument for the "..." in a variadic macro
but the warning doesn't indicate which flag is used to enable/disable the warning (this is typically shown in square brackets [-Wwarning-flag-name]
).
In clang it is -Wgnu-zero-variadic-macro-arguments
. I haven't been able to find anything like that in the warning documentation of gcc-5.3.0.
I've tried -Wgnu-zero-variadic-macro-arguments
, -Wvarargs
, -Wno-variadic-macros
(thanks to @ Revolver_Ocelot) but none of these is in charge of this warning.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…