In porting a large piece of C++ code from Visual Studio (2008) to Xcode (4.4+), I encounter lines such as:
UNUSED_ALWAYS(someVar);
the UNUSED_ALWAYS(x)
(through UNUSED(x)
) macro expands to x
which seems to silence Visual C++ just fine. It's not enough for Clang however.
With Clang, I usually use the #pragma unused x
directive.
The UNUSED_ALWAYS
and UNUSED
macros are defined in an artificial windows.h
header which I control that contains a number of utilities to help Xcode compile Windows stuff.
Is there a way to define UNUSED(x)
to expand to #pragma unused x
? I tried this, which Clang fails to accept:
#define UNUSED(x) #pragma unused(x)
I also tried:
#define UNUSED(x) (void)(x)
Which seems to work. Did I miss anything?
See Question&Answers more detail:os