Hi, >> From this point it's users responsibility to >> pass parameters properly. > > Ok. Next topic: coverage of potential C .dll functions. > > IMO it's unworkable cover functions of n parameters with n size, > seems reasonable to restrict to 15 the number of parameters.
This limit already exists, and it should be enough for a start. Anyway, once the scheme is developed, it will be easy to extend if it's worth it or required. For vast majority of cases 15 is enough. > Currently only covering sizes of 4, 8 bytes in win32 and 8 bytes in win64. > This means that calls to PosibleDLLfunc( WORD wPar, BYTE bPar ) are not > possible. 4 and 8 byte parameters are enough for all win32 calling conventions. So it's possible to pass BYTE already. > How many types of data have to be supported? win32: 4 or 8 for arguments, return value can be 4, 8 bytes or double/float. plus each in two variations: cdecl or stdcall (winapi) win64: 8 for argument, return value is also 8 bytes > BYTE, WORD, DWORD, PVOID, float, double. For win64 current solution covers all combinations, as there is a much simpler calling convention there, see: http://msdn.microsoft.com/en-us/library/ms235286(VS.80).aspx Brgds, Viktor _______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour