title: argument of type void * is incompatible with parameter of type
body: <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>