argument of type void * is incompatible with parameter of type
<p>I have the following export function in a DLL that I am writing</p>

<pre><code>DLLEXPORT int HttpFilterProc(FilterContext* context, unsigned int eventType, void* eventData) {
    switch (eventType) {
    case kFilterAuthUser:
        return Authenticate(context, eventData);
    default:
        return kFilterNotHandled;
    }
}
</code></pre>

<p>This method signature is not in my control so i cannot change it, I want to call into the following method</p>

<pre><code>int Authenticate(FilterContext *context, FilterAuthenticate *authData) {
    FilterRequest requestInfo;
    char temp[255] = " ";
    int errId;
}
</code></pre>

<p>I know that for the case kFilterAuthUser that the type of void* eventData will be a FilterAuthenticate typedef struct.</p>

<p>The issue is that I get a compile error with the above code and I do not understand why, I am following this from examples that work so I know that this should work.  I am using Visual Studio 2015 and writing a Win32 DLL can anyone explain why I am getting this error and suggest how I can resolve please.</p>