On Wed, 11 Sep 2002, Dimitrie O. Paun wrote: [...]
Exactly! That's where I was driving at. But this depends on getting stuff automatically out of .c file, because this way we can retain the type information, which we now lose (except for strings). Once we have the type information, the sky's the limit...
Hmm, for strings the spec files currently distinguish between input strings (str) and output strings (ptr). This cannot be extracted from the source files... unless we start using IN/OUT macros everywhere?
Or we could do as winapi_{check,extract} already supports:
BOOL WINAPI WaitCommEvent( HANDLE hFile, /* [in] handle of comm port to wait for */ LPDWORD lpdwEvents, /* [out] event(s) that were detected */ LPOVERLAPPED lpOverlapped) /* [in/out] for Asynchronous waiting */ { /* ... */ }
Alexandre rejected having in/out markers in the .spec files so I never continued that project...
Anyway, where it would be most useful is for Winelib applications. So if we can support these then it would be great.
Yes.
But it wouldn't it be easier to hack the compiler?
Maybe. :-)
However the compiler must be really clever to determinte whether a pointer parameter is IN, OUT or IN/OUT.
Futhermore it is logically impossible for stubbed functions and for stubbed functions it would be really nice to see the parameters wouldn't it?
So I guess we have to put it in the source code somewhere. See my suggestion above.