'identifier' : unreferenced local variable
The local variable is never used. This warning will occur in the obvious situation:
void main() { int i; // C4101 }
However, this warning will also occur when calling a static member function through an instance of the class:
struct S { static int func() { return 1; } }; int main() { S si; // C4101, si is never used int y = si.func(); return y; }
In this situation, the compiler uses information about si
to access the static function, but the instance of the class is not needed to call the static function; hence the warning. To resolve this warning, you could:
si
in the call to func
.func
.int y = S::func();
.