All wine headers seem to declare function pointers like
<return value> WINAPI (*<function pointer name)(<parameter list>)
Visual C 5 does not like the WINAPI (eg __stdcall) outside of the brackets and requires:
<return value> (WINAPI *<function pointer name>)(<parameter list>)
[snip]
Maybe there is someone on this list which can give me an direct answer to this.
If you want to compile with Visual C++ you will have to do something like below.
#ifdef __GNUC__ #define WINAPI_PTR * WINAPI #else #define WINAPI_PTR WINAPI * #endif
And replace all WINAPI function with:
<return value> (WINAPI_PTR <function pointer name>)(<parameter list>)
Hmm. That reminds me. I experimented with this some year ago but I have no distinct memory of asking Alexandre whether he wanted a patch that does this for Wine. Then I forgot about it.
Alexandre: Will you accept a patch that does this?
Patrik Stridvall ps@leissner.se writes:
Hmm. That reminds me. I experimented with this some year ago but I have no distinct memory of asking Alexandre whether he wanted a patch that does this for Wine. Then I forgot about it.
Alexandre: Will you accept a patch that does this?
I don't think that's necessary anymore. (WINAPI *func) should work fine in gcc too.